Was ist erforderlich, um eine Anwendung bereitzustellen, die die neue LocalDB von Microsoft verwendet?

10

Ich möchte wissen, welche Microsoft-Komponenten installiert werden müssen, damit diese neue LocalDB auf einem Benutzercomputer ausgeführt werden kann.

Jetzt in CTP3: SQL Server Express LocalDB LocalDB ist eine neue einfache Bereitstellungsoption für SQL Server Express Edition mit weniger Voraussetzungen, die sehr schnell installiert werden kann. Dies macht es ideal für Entwickler, die eine eingebettete SQL Server-Datenbank für Desktopanwendungen oder Tools benötigen. LocalDB verfügt über dieselben Programmierbarkeitsfunktionen wie SQL Express, wird jedoch mit Anwendungen und nicht als Dienst ausgeführt. Es ist als Teil des SQL Server-Codenamens „Denali“ CTP3-Download verfügbar.

Das Obige stammt von der Microsoft-Website Neu in CPT3

Dies klingt nach der perfekten SQL-Datenbank für kleine Desktop-Anwendungen für einen Benutzer. Ich versuche herauszufinden, was ich in eine Installation aufnehmen muss. Ich möchte dies als eingebettete Datenbank verwenden, weiß jedoch nicht, ob ich Microsoft-Komponenten installieren oder sicherstellen muss, dass zuvor andere Microsoft-Komponenten installiert wurden.

Weiß jemand, welche Microsoft-Komponenten installiert werden müssen, damit diese neue LocalDB ausgeführt werden kann? Gibt es da draußen einen Installateur, der automatisch das Vorhandensein der erforderlichen Komponenten erkennt und diese installiert?

Michael Riley - AKA Gunny
quelle
2
Hat Delphi als Neuware eine sofort einsatzbereite Datenbankkomponente, die sogar eine Verbindung dazu herstellen würde? Möglicherweise müssen Sie Ihre eigene Schnittstelle schreiben. Sie können sich auch SQLite ansehen, eine andere (äußerst beliebte und kostenlose) eingebettete Datenbank. Es gibt eine Reihe von Delphi-Schnittstellen dafür.
Großmeister

Antworten:

9

Von msdn.com :

LocalDB verwendet dieselbe sqlservr.exe wie der reguläre SQL Express und andere Editionen von SQL Server. Die Anwendung verwendet dieselben clientseitigen Anbieter (ADO.NET, ODBC, PDO und andere), um eine Verbindung zu ihr herzustellen

LocalDB wird einmal auf einem Computer installiert (pro SQL Server-Hauptversion)

Die Anwendung stellt nur eine Verbindung zu "Data Source = (localdb) \ v11.0" her und der LocalDB-Prozess wird als untergeordneter Prozess der Anwendung gestartet

Aber es ist nicht die leichteste eingebettete Datenbank, das ist SQL Server Compact:

Ausführungsmodus: SQL Server Compact ist eine In-Proc-DLL, während LocalDB als separater Prozess ausgeführt wird. Festplattennutzung: Alle SQL Server Compact-Binärdateien belaufen sich auf einige 4 MB, während die Installation von LocalDB 140 MB dauert.

MSalters
quelle
Nein, ich nicht. Ich hatte gehofft herauszufinden, welche Komponenten auf dem Computer des Benutzers installiert werden müssen, damit LocalDB funktioniert. Dies beantwortete die Frage nicht. Es ist eine Schande, dass PSE dieser Antwort ein Kopfgeld gewährt, nur weil sie die meisten Stimmen hat.
Michael Riley - AKA Gunny
Das ist anscheinend keine stabile Liste: "Unser oberstes Ziel ist es, LocalDB in einem separaten, vereinfachten und kleineren Installationsprogramm anzubieten. Wir werden Sie hier über unsere Fortschritte auf dem Laufenden halten." (von der verlinkten Seite). CTP ist immerhin eine Technologievorschau; Noch ist nicht alles fertig.
MSalters
5

Ich habe die Antwort gefunden, nach der ich im Hinblick auf die Bereitstellung der neuen LocalDB gesucht habe.

Beachten Sie, dass Sie den neuesten SQL Server Native Client "Denali" (für ODBC und OLE DB) oder das nächste .NET Framework (für ADO.NET) installieren müssen, da die Aktivierungslogik im clientseitigen Anbieter vorhanden ist. Wir liefern auch ein QFE für .NET Framework 4 aus, das die Unterstützung für LocalDB hinzufügt (ich werde den Link hier einfügen, sobald es verfügbar ist).

Referenzlink

Ich werde dem Autor dieses Blogs eine E-Mail mit weiteren Einzelheiten senden, die ich möglicherweise benötige.

Michael Riley - AKA Gunny
quelle
Danke @Gunny, ich habe bei stackoverflow nach der genauen Frage gesucht. Wenn Sie dort antworten möchten, ist hier der Link
Steve
2

Um MSalters Punkt neu zu formulieren , ist SQL Compact möglicherweise die beste Option für Ihre Anforderungen. Es gibt verschiedene Gründe:

  • SQL Server Compact erfordert keine clientseitige Installation oder Aktualisierung. Aktualisierungen werden durch den Versand einer neueren Kopie einer Baugruppe ausgegeben und erfordern keine erhöhten Berechtigungen
  • Mit SQL Server Compact kann jeweils ein einzelner Prozess eine Verbindung herstellen. Dies macht es ideal als Datenbank für eine einzelne Anwendung.
  • SQL Server Compact ist das kleinste Produkt der SQL Server-Familie

Es gibt jedoch Nachteile:

  • Eingeschränkte Funktionalität im Vergleich zu anderen SQL Server-Varianten
  • Es kann jeweils nur ein Prozess eine Verbindung zu einer Datenbank herstellen
STW
quelle
0

Auch ich interessiere mich für die neue LocalDB für Desktop-Apps, die eine eingebettete Datenbank benötigen. Es hört sich so an, als müssten sowohl LocalDB als auch Compact Dateien außerhalb der EXE-Datei meiner Anwendung bereitstellen. Als Delphi-Entwickler, der durch das wirklich eingebettete Modell von DBISAM verwöhnt wurde, sehe ich diese nicht als meinen Anforderungen entsprechend.

Die DBISAM "Engine" wird direkt in die EXEs meiner Anwendungen kompiliert und bietet mir das Beste aus beiden Welten: SQL und das ältere "Navigations" -Modell, in dem Sie direkten Tabellenzugriff haben, und solche BDE-ähnlichen Feinheiten wie FindKey ([]), SetRange ([Start Ende]);

Es müssen keine weiteren Dateien bereitgestellt werden!

DBISAM kann in drei Modi verwendet werden: 1: Lokal, Einzelbenutzer, 2: Freigegebene Datei, Mehrbenutzer und 3: Client / Server.

Elevate Software, Hersteller von DBISAM, bieten auch eine neuere Datenbank an, ElevateDB, die SQL Server viel ähnlicher ist.

DBISAM: http://www.elevatesoft.com/products?category=dbisam ElevateDB: http://www.elevatesoft.com/products?category=edb

Wes Peterson
quelle
Ihre Antwort enthält zwar einige gute Informationen, die gestellte Frage wird jedoch nicht behandelt.
Walter
-1

Ich denke, Sie sprechen über SQL CE 4.0

SQL CE 4.0 ist eine kompakte Dateibasis-Datenbank, die alle Funktionen von SQL Express bietet, jedoch keine Installation auf dem Computer erfordert, auf dem die Software ausgeführt wird. Sie stellen Ihre Anwendung einfach zusammen mit der .sdf-Datei bereit (dies ist die Erweiterung sqlce 4.0) und stellen sicher, dass Ihr Projekt auf die SQL CE 4.0-DLL verweist. Diese DLL wird natürlich in Ihren Build-Einstellungen auf copy local = true gesetzt, sodass sie zusammen mit Ihrer Anwendung bereitgestellt wird. Es ist nichts anderes erforderlich, damit es funktioniert.

Matteo Mosca
quelle