2009-11-28 10 views
5

Ho creato la mia prima app desktop basata su database in .NET e non sono in grado di capire come posso distribuire il database con il programma di installazione dell'applicazione, in modo che il database, l'applicazione e SQL Server siano installati in una volta sola.distribuire il database SQL Server Express con l'app desktop?

Se distribuisco solo il client nativo per SQL Server e il database con il programma di installazione, funzionerà?

L'applicazione utilizza il database molto frequentemente.

+1

sql server express è un database di classe server e quindi probabilmente una scelta scadente per un'applicazione _desktop_. Utilizza un database _in-process_ come sqlite, sql server compact o anche l'accesso invece. –

+0

Devo concordare con @Joel - se si tratta di un'applicazione desktop per utente singolo, probabilmente si dovrebbe usare SQL Server Compact Edition, che è un file .dll e può quindi essere distribuito come parte del programma di installazione dell'app. – Murph

risposta

1

Utilizzando il clic, è possibile fare in modo che sql server esprima una dipendenza del progetto principale e venga distribuito con i dati di installazione e installato, se non è ancora installato, quando si installa l'app per la prima volta.

È possibile farlo nelle proprietà del progetto, in Visual Studio.

+0

Ci stavo pensando, ma non offre molte (o nessuna) personalizzazione per l'installazione. Stavo pensando a cosa sarà possibile implementare il client sql nativo e il database con l'app e funzionerebbe? – Vikas

+0

Se si distribuisce il pacchetto scaricabile gratuito di sql server express da microsoft, funzionerà in quanto include il motore sql e il client e i driver di base per il suo funzionamento. Ma richiederà l'instalazione manuale dall'utente finale, se necessario. –

+0

@Vikas: oltre al client SQL e al file di database (MDF), gli utenti avranno anche bisogno di una copia del motore di database di SQL Express; come dice questa risposta, Click Once è il modo migliore per farlo. Se si desidera evitare che gli utenti installino un'app separata, è consigliabile passare all'edizione di SQL Server Compact, che può essere incorporata nell'app. – RickNZ

5

È necessario installare il motore SQL Express se si desidera utilizzarlo. La distribuzione della sola connettività client ti fornirà esattamente ciò che implica il nome "connettività client": sarai in grado di collegarti a un server SQL. Ma solo un'istanza di SQL Server in esecuzione sarà in grado di leggere/scrivere il database dell'applicazione.

L'installazione MSI di SQL Express è in realtà very customizable e consente numerosi scenari, tra cui l'installazione automatica e la distribuzione remota. Per le opzioni più basilari, vedi Configuring SQL Express During Installation. Il programma di installazione dell'applicazione dovrà richiamare il programma di installazione rapida passando i parametri desiderati.

Problemi correlati