none
Anwendungen mit MS SQL Server auf Desktop-Versionen RRS feed

  • Frage

  • Hi,

    wir haben bisher VB6/VB.Net-Anwendungen geschrieben, die einfache Desktop-Versionen mit einer Access-Datenbank-Anbindung (z.B. Jet) waren und sind. Nun möchte der Kunde aus Sicherheitsgründen ein umfangreiches Update (in VB.Net) mit a) einer MS SQL Server-Datenbankanbindung auf dem Firmenserver, und b) Desktopanwendungen ebenfalls mit einer MS SQL Server Datenbank. Die Idee ist dabei, aus der Firmendatenbank einen 'Abzug' zu erstellen, den Desktopanwendern (meist mit Laptop unterwegs) zuzuschicken, damit diese damit arbeiten können.

    Meine ersten Fragen: Was muss man bei den Desktopanwendungen (minimal) mitinstallieren, um problemlos mit einer SQL Server Datenbank arbeiten zu können? Bei dem Zugriff auf die Access-Datenbanken musste ja Access nicht zwingend mit drauf sein. Wie muss dieser 'Abzug' aussehen, damit auf den Laptops damit problemlos gearbeitet werden kann? Also, wie sieht die Kommunikation der Datenbanken (Firmendatenbank - Laptops und zurück) aus? Einen generellen Zugriff auf eine Datenbank via Internet möchte der Kunde nicht.

    Danke schon einmal für Antworten und/oder Nachfragen.

    Jörg

     

    Mittwoch, 12. Januar 2011 15:51

Antworten

  • Hallo Jörg
    Was Du lokal installieren musst, hängt davon ab, welches Format der "Abzug" haben soll. Das Vorgehen hängt nicht zuletzt davon ab und ob dieser Readonly oder Readwrite sein soll.
    Falls Du einen SQL Server für den Abzug einsetzen willst, gibt es mehrere Möglichkeiten:
    - Kopie der SQL Server Datenbank auf den Client und Installation des SQL Servers (DBEngine) auf dem Client. Dies ist dann vermutlich sinnvoll, wenn der Client keine Datenänderungen vornehmen kann.
    - Replikation der SQL Server Datenbank auf die Clients: Das wäre dann sinnvoll, wenn die Clients auch Updates machen können, die dann mit dem Server später wieder abgeglichen werden sollen.
    - Export der Tabellen in eine MDB: Auch das geht, in diesem Fall musst Du auf dem Cleint nichts installieren, lediglich die MDB Datei, die im SQL Server erzeugt werden kann, auf den Client kopieren.
     
    Damit die Desktopanwendung läuft, braucht diesen den SQL Server Treiber (z.B. den ODBC Treiber), über den den SQLServer zugegriffen werden kann. Für eine Jet DB Engine benötigst Du keine zusätzlichen Treiber, diese sollten mit dem Betriebssystem installiert werden und schon drauf sein, da sonst Deine Anwendungen nicht laufen würden.
     
    Falls Du den Abzug als MDB fahren willst, musst Du darauf achten, dass Du beim SQL Server Jet kompatibel bleibst, rsp. die Anwendung nicht Dinge braucht, die auf dem SQL Server, aber in Jet nicht verfügbar sind. Damit gehen Dir einige Performance Vorteile verloren, die Du hast, wenn Du nur den SQL Server unterstützt. Jet kennt z.B. keine SPs und die Queries sind kein wirklicher Ersatz für Views auf dem SQL Server, welche oft für Performanceverbesserungen eingesetzt werden.
     
    Ich würde daher entweder versuchen den "Abzug" als Replikation auf den Client zu laden, oder dann eine Kopie der Server Datenbank auf den Client kopieren. Auf dem Client dann halt den SQL Server installieren. Da es sich zur Zeit um MDB Dateien handelt, sollte die Datenbankgrösse klein genug sein, das Du mit einer SQL Server Express Edition genügend Platz hast.
     
    Gruss
    Henry
     
     
    "Jörg Reitze" <=?utf-8?B?SsO2cmcgUmVpdHpl?=> wrote in message news:ea3e13ad-d3e6-407b-a44e-aa07667d3391@communitybridge.codeplex.com...

    Hi,

    wir haben bisher VB6/VB.Net-Anwendungen geschrieben, die einfache Desktop-Versionen mit einer Access-Datenbank-Anbindung (z.B. Jet) waren und sind. Nun möchte der Kunde aus Sicherheitsgründen ein umfangreiches Update (in VB.Net) mit a) einer MS SQL Server-Datenbankanbindung auf dem Firmenserver, und b) Desktopanwendungen ebenfalls mit einer MS SQL Server Datenbank. Die Idee ist dabei, aus der Firmendatenbank einen 'Abzug' zu erstellen, den Desktopanwendern (meist mit Laptop unterwegs) zuzuschicken, damit diese damit arbeiten können.

    Meine ersten Fragen: Was muss man bei den Desktopanwendungen (minimal) mitinstallieren, um problemlos mit einer SQL Server Datenbank arbeiten zu können? Bei dem Zugriff auf die Access-Datenbanken musste ja Access nicht zwingend mit drauf sein. Wie muss dieser 'Abzug' aussehen, damit auf den Laptops damit problemlos gearbeitet werden kann? Also, wie sieht die Kommunikation der Datenbanken (Firmendatenbank - Laptops und zurück) aus? Einen generellen Zugriff auf eine Datenbank via Internet möchte der Kunde nicht.

    Danke schon einmal für Antworten und/oder Nachfragen.

    Jörg

     

    Donnerstag, 13. Januar 2011 06:48