Domanda

Ho ereditato un'applicazione VB6/Access che sviluppiamo e vendiamo da molti anni.Passeremo a SQL Server 2005 Express Edition e .Net.

L'applicazione può essere multiutente.Attualmente la configurazione è semplice per il cliente: accedere alla cartella per creare il database al primo avvio;il secondo utente accede allo stesso file.

Se utilizziamo SQLExpress, credo che la nostra applicazione richiederà un maggiore coinvolgimento per configurare SQLExpress sul server.Ma penso che otterremo una migliore sicurezza e (senza modifiche al codice) una versione SQL per i clienti più grandi.

Come posso creare la migliore esperienza cliente dal punto di vista dell'installazione e del supporto tecnico?Quali problemi ti sono sorti?Quali procedure di installazione hanno funzionato?

Hai configurato un'installazione separata per server/client o fornisci solo buone istruzioni?Che tipo di cose sbagliano i clienti al primo tentativo?

È stato utile?

Soluzione

Un progetto di distribuzione di Visual Studio consente di installare facilmente un'istanza di SQL Server Express.

Abbiamo lo stesso tipo di scenario per le nostre applicazioni e ciò significa che sono necessarie installazioni separate per client e server.

La nostra installazione del server si occupa dell'installazione di un nuovo SQL Server o dell'aggiornamento dello schema di un'installazione esistente, se necessario.L'installazione del client impacchetta semplicemente i file richiesti dal client.È necessario considerare lo scenario di aggiornamento dello schema del database e di garantire che i client dispongano della versione client aggiornata che funzioni con il nuovo schema.Raggiungiamo questo obiettivo in modo semplice:

Memorizzazione di un ID di versione nel database, ad es.1.0.1 Aggiornamento dell'assemblyInfo.cs dell'applicazione client e garantire che la versione assembly corrisponda alla versione memorizzata nel database.In caso contrario, viene richiesto all'utente di installare la nuova versione.

Per la migliore esperienza utente possibile, vorresti essere in grado di installare una nuova versione del server e che tutti i client si aggiornino automaticamente.Abbiamo un metodo per farlo e posso fornirti maggiori dettagli se necessario.

Altri suggerimenti

Consiglierei di seguire il percorso SQL Express e di includerlo nel pacchetto di installazione.Il programma di installazione ha moltissime opzioni della riga di comando ed è possibile utilizzare script SQL per eseguire qualsiasi configurazione post-installazione sul database (ad esempio, abilitare/disabilitare l'integrazione CLR, OpenRowset e altre funzionalità).

Inoltre, è molto più stabile delle vecchie installazioni MSDE 2000;Ho avuto degli incubi a sostegno di ciò.Ho anche scoperto che 99 volte su 100, inserire i parametri di installazione del DB predefiniti rende felici le persone.

Blog di SQL Express

Come installare SQL 2008 Dal prompt dei comandi

Quanti utenti e quanti dati?

Non so se esistono linee guida generali su quanti utenti siano "troppi" per SQL Express 2005, ma esiste un limite dati rigido di 4 GB.La mia ipotesi è che non lo raggiungeresti con l'eredità di Access, ma sarebbe una buona cosa saperlo.

È possibile automatizzare l'installazione di SQL Express.L'ho visto fare perché qualcosa che è stato installato da mia moglie lo ha fatto ed è l'ultima persona che sospetto che lo abbia installato.

C'è anche Edizione compatta di SQL Server che credo sia rivolto a .NET 3.5 e Windows Mobile.Credo che sia più analogo ai bit del "database a file singolo" come quelli ottenuti con Access.

SQL Express rappresenterà un enorme passo avanti rispetto ad Access in termini di capacità e affidabilità.Non dovrebbe essere necessaria alcuna ulteriore configurazione, solo un approccio diverso a condizione che tu sappia cosa stai facendo.

Nella mia azienda lo usiamo molto.Si sono verificati alcuni problemi con tempi di avvio lenti su macchine più lente.

L'esperienza di installazione non è perfetta: esiste un'utilità che ripristinerà il database utilizzato dall'applicazione come modello di database.

Dal momento che stai ancora pensando di passare a SQLExpress, il tuo gruppo ha preso in considerazione SQLite?Puoi comunque avere le funzionalità del database di cui hai bisogno senza dover installare un motore sul sistema del cliente.

SQL Server 2005 Express Edition può essere installato facilmente con qualsiasi programma di installazione decente.Bastano un paio d'ore di lavoro!Se ci tieni al cuore, non lasciare che la paura dell'installazione ti trattenga.

Un'altra opzione:Credo che tu possa anche utilizzare SQL Server Express in una "modalità file" in cui punti semplicemente al file MDF e non devi avere un'istanza di SQL Server in esecuzione.Sarebbe molto simile a come sembra che la tua app attuale utilizzi Access.Non sono sicuro di come funzioni con le situazioni multiutente, ma potrebbe essere qualcosa su cui indagare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top