Cosa è necessario per distribuire un'applicazione che utilizza il nuovo LocalDB di Microsoft?


10

Mi piacerebbe sapere quali componenti Microsoft devono essere installati affinché questo nuovo LocalDB possa essere eseguito su un computer degli utenti.

Ora in CTP3: LocalDB di SQL Server Express LocalDB è una nuova opzione di distribuzione leggera per SQL Server Express Edition con meno prerequisiti che si installa molto rapidamente. Ciò lo rende ideale per gli sviluppatori che necessitano di un database SQL Server incorporato per applicazioni o strumenti desktop. LocalDB ha tutte le stesse funzionalità di programmabilità di SQL Express, ma viene eseguito in-process con applicazioni e non come servizio. È disponibile come parte del download del codice CTP3 "Denali" in codice SQL Server.

Quanto sopra proviene dal sito Web di Microsofts Nuovo in CPT3

Sembra il perfetto database SQL per piccole applicazioni desktop monoutente. Sto cercando di scoprire cosa devo includere in un'installazione. Voglio usarlo come database incorporato ma non so se devo installare alcun componente Microsoft o accertarmi che altri componenti Microsoft siano stati precedentemente installati.

Qualcuno sa quali componenti Microsoft devono essere installati per far funzionare questo nuovo LocalDB? Esiste un programma di installazione che rileverà automaticamente la presenza dei componenti necessari e li installerà?


2
Essendo nuovo, Delphi ha un componente db out of the box che potrebbe persino connettersi ad esso? Potrebbe essere necessario scrivere la tua interfaccia. Puoi anche guardare a SQLite, un altro dbms incorporato (estremamente popolare e gratuito). Sono disponibili diverse interfacce Delphi.
GrandmasterB,

Risposte:


9

Da msdn.com :

LocalDB utilizza lo stesso sqlservr.exe del normale SQL Express e di altre edizioni di SQL Server. L'applicazione utilizza gli stessi provider lato client (ADO.NET, ODBC, PDO e altri) per connettersi ad esso

LocalDB viene installato una volta su un computer (per la versione principale di SQL Server)

L'applicazione si sta appena connettendo a "Origine dati = (localdb) \ v11.0" e il processo LocalDB viene avviato come processo figlio dell'applicazione

Ma non è il DB incorporato più leggero, è SQL Server Compact:

Modalità di esecuzione: SQL Server Compact è una DLL in-proc, mentre LocalDB viene eseguito come processo separato. Utilizzo del disco: tutti i file binari di SQL Server Compact ammontano a circa 4 MB, mentre l'installazione di LocalDB richiede 140 MB.


No non lo so. Speravo di scoprire quali componenti dovessero essere installati sul computer degli utenti per far funzionare LocalDB. Questo non ha risposto alla domanda. È un peccato che PSE assegnerà un premio a questa risposta solo perché ha il maggior numero di voti.
Michael Riley - AKA Gunny,

Non è un elenco stabile, a quanto pare: "Il nostro obiettivo finale è offrire LocalDB in un programma di installazione separato, semplificato e più piccolo. Ti terremo informato sui nostri progressi qui." (dalla pagina collegata). Dopo tutto, il CTP è un'anteprima della tecnologia; non tutto è ancora nella sua forma finita.
MSalters il

5

Ho trovato la risposta che cercavo in merito alla distribuzione del nuovo LocalDB.

Si noti che poiché la logica di attivazione risiede nel provider sul lato client, è necessario installare quello più recente: SQL Server Native Client "Denali" (per ODBC e OLE DB) o il successivo .NET Framework (per ADO.NET). Stiamo anche spedendo un QFE per .NET Framework 4 che aggiunge il supporto per LocalDB (inserirò il link qui quando sarà disponibile).

Link di riferimento

Manderò un'email all'autore di questo blog per qualsiasi altra specifica di cui potrei aver bisogno.


Grazie @Gunny, stavo cercando la domanda esatta su StackOverflow. Se desideri rispondere qui, ecco il link
Steve

2

Per riaffermare il punto MSalters , SQL Compact potrebbe essere l'opzione migliore per le tue esigenze. Ci sono diverse ragioni:

  • SQL Server Compact non richiede alcuna installazione o aggiornamento sul lato client; gli aggiornamenti vengono emessi inviando una copia più recente di un assembly e non richiedono autorizzazioni elevate
  • SQL Server Compact consente la connessione di un singolo processo alla volta. Questo lo rende ideale come database per una singola applicazione.
  • SQL Server Compact è il più piccolo della famiglia SQL Server

Ci sono aspetti negativi, tuttavia:

  • Funzionalità limitata rispetto ad altre versioni di SQL Server
  • Solo un processo può connettersi a un database alla volta

0

Anch'io sono interessato al nuovo LocalDB per le app desktop che richiedono un database incorporato. Sembra che sia LocalDB che Compact richiedano la distribuzione di file esterni al file EXE della mia applicazione. Come sviluppatore Delphi viziato dal modello veramente incorporato di DBISAM, non li vedo come conformi alle mie esigenze.

Il "motore" DBISAM si integra direttamente negli EXE delle mie applicazioni e mi offre il meglio di entrambi i mondi: SQL e il vecchio modello di "navigazione" in cui si ha accesso diretto alle tabelle e simili prelibatezze come BDE come FindKey ([]), SetRange ([inizio], [fine]);

Non è necessario distribuire altri file!

DBISAM può essere utilizzato in tre modalità: 1: locale, utente singolo, 2: file condiviso, multiutente e 3: client / server.

Elevate Software, i produttori di DBISAM offrono anche un database più recente, ElevateDB, che è molto più simile a SQL Server.

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


Mentre ci sono alcune buone informazioni nella tua risposta, non risponde alla domanda posta.
Walter,

-1

Penso che tu stia parlando di SQL CE 4.0

Sql CE 4.0 è un db di file base leggero che ha tutte le funzionalità di sql express ma non richiede l'installazione di alcun file sulla macchina che esegue il software. Devi solo distribuire la tua applicazione insieme al file .sdf (questa è l'estensione sqlce 4.0) e assicurarti che il tuo progetto faccia riferimento a SQL CE 4.0 dll. Questa dll, ovviamente, verrà impostata su copy local = true nelle impostazioni di compilazione, quindi verrà distribuita insieme all'applicazione. Nient'altro è richiesto per farlo funzionare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.