2009-08-05 14 views
7

Lavorare su un team in cui le persone sono inclini a modificare le tabelle Dev di SQL Server e a dimenticarsene, oppure a preparare una modifica per la distribuzione e a dover attendere tale distribuzione. Questo lascia le nostre dev e le tabelle live incoerenti, causando problemi quando gli SPROC vengono spinti dal vivo.Strumento per SQL Server diff

Esiste uno strumento tramite il quale è possibile immettere un nome SPROC e farlo verificare tutte le tabelle a cui si fa riferimento in esso nei DB di sviluppo e live e notificare eventuali differenze?

risposta

9

Conosco due ottimi strumenti per diffing strutture di database SQL - non guardano specificamente all'interno di stored procedure al loro testo, ma' ll mostrerà differenze strutturali nei database:

Redgate ha anche un SQL Dependency Tracker che visualizza le dipendenze degli oggetti e potrebbe essere molto utile qui.

Marc

1

Provare Microsoft Visual Studio Database Edition aka Data Dude (precedentemente per i professionisti del database). Effettuerà un confronto completo dello schema e genererà gli script necessari per aggiornare lo schema di destinazione.

Naturalmente, questo non dovrebbe sostituire un adeguato processo di generazione ;-)

2

mi sento di raccomandare SQL confrontare e SQL Data Confronto da Redgate Software. Ho lavorato con questi strumenti per diversi progetti e hanno fatto un ottimo lavoro. Anche la documentazione delle modifiche è una buona cosa da fare, ma alcune modifiche sono complesse per scrivere il proprio codice SQL (compresi i dati di giocoleria tra le tabelle).

Gli strumenti redgate creano script in pochi secondi e quegli script sono quasi sempre corretti (alcune versioni precedenti hanno avuto difficoltà con le dipendenze delle tabelle nei grandi database, ma quando si gioca con le istruzioni (in una transazione iniziale/rollback) Sono stato in grado di risolvere rapidamente questi problemi).

Un altro punto di forza nelle suite redgate è che è possibile salvare il progetto di confronto. Ciò è particolarmente utile quando non si desidera convertire una determinata tabella (o dati), è possibile escluderli. Quando si carica il progetto la volta successiva, il software ignorerà automaticamente tali tabelle.

Uno svantaggio è il costo del software (le piccole aziende con cui ho lavorato non volevano acquistare il software). Il confronto tra SQL e il confronto tra i dati SQL ti costerà circa 800 dollari, ma se guardi il tempo che salvi quando li rilasci risparmierai un sacco di soldi. C'è anche una prova con cui puoi giocare (credo che siano 30 giorni).

+1

SQL Compare e SQL Data Compare può essere acquistato insieme come parte di SQL confronto Bundle per $ 595. Comprende anche SQL Packager e SQL Dependency Tracker. –

1

Ho fatto un programma di utilità MssqlMerge che permette di confrontare (e unire) i dati del database MSSQL e oggetti di programmazione. Permette anche di cercare una determinata parola o frase attraverso le definizioni delle tabelle e gli oggetti di programmazione.

1

Per SQL Server 2005/2008, Open DBDiff funziona piuttosto bene.La grande parte di questo è che è gratuito. Si noti inoltre che sto scrivendo questa risposta per la versione 0.9 che attualmente funziona per SQL 2005/2008.

Mostrerà le differenze tra lo schema del database tra un database di origine specificato e il database di destinazione specificato. Ci sono anche pulsanti che puoi cliccare per aggiornare o creare la tabella che è in questione.

2

SQLDBDiff è uno strumento semplice e intuitivo.

SQLDBDiff supporta SQL Server 2000 to 2016 e anche SQL Azure.

SQLDBDiff disponibile con free con uso limitato e completo con trial.

SQLDBDiff Screen

More Screen

Problemi correlati