A me capita spesso che eseguo delle modifiche al database sul mio PC di sviluppo e non mi scrivo quello che ho fatto. Divento così matto per trovare i campi che ho aggiunto.
Finalmente dalla versione 2005 di Microsoft SQL Server c’è un programmino veramente fico che consente di trovare le differenza tra due database sia a livello di struttura sia a livello di dati contenuti. In più crea lo script in linguaggio SQL per apportare le modifiche.
La sintassi generale è la seguente:
tablediff
[ -? ] |
{
-sourceserver source_server_name[\instance_name]
-sourcedatabase source_database
-sourcetable source_table_name
[ -sourceschema source_schema_name ]
[ -sourcepassword source_password ]
[ -sourceuser source_login ]
[ -sourcelocked ]
-destinationserver destination_server_name[\instance_name]
-destinationdatabase subscription_database
-destinationtable destination_table
[ -destinationschema destination_schema_name ]
[ -destinationpassword destination_password ]
[ -destinationuser destination_login ]
[ -destinationlocked ]
[ -b large_object_bytes ]
[ -bf number_of_statements ]
[ -c ]
[ -dt ]
[ -et table_name ]
[ -f [ file_name ] ]
[ -o output_file_name ]
[ -q ]
[ -rc number_of_retries ]
[ -ri retry_interval ]
[ -strict ]
[ -t connection_timeouts ]
}
La sintassi da eseguire da riga di comando per trovare la differenza tra due tabelle è la seguente:
tablediff -sourceserver serverorigine -sourcedatabase dborigine –sourcetable tabellaorigine
-destinationserver serverdestinazione -destinationdatabase dbdestinazione -destinationtable tabelladestinazione
-o diff_output.txt -F diff_script
Per ulteriori informazioni si veda il supporto Microsoft. Buon lavoro a tutti!