Talvolta mi capita di dover copiare tabelle da un database SQL ad un altro; per copiare sia lo schema che i dati normalmente utilizzo questa query:
SELECT * INTO NomeDbDestinazione.dbo.NomeTabellaDestinazione FROM NomeDbOrigine.dbo.NomeTabellaOrigine
Lo strumento Microsoft SQL Server Database Publishing Wizard 1.1 permette di salvare un unico script che può essere utilizzato per ricreare un database, e anche questo è decisamente molto comodo.
c68629e4-ac17-445d-826a-52a7747c794c|2|2.5
Questa procedura permette di azzerare i campi identity nelle tabelle sql; è una operazione utile quando ad esempio si fanno delle prove sul database e poi si vuole avere la tabella "pulita", senza cioè avere "buchi" nella numerazione delle colonne che normalmente sono gli ID.
Si utilizza la funzione:
TRUNCATE nome_tabella
Se però esistono vincoli esterni di relazione con altre tabelle non è possibile utilizzare la procedura segnalata; bisogna invece utilizzare la seguente:
DBCC CHECKIDENT ('nome_tabella', RESEED, 1)
Nel caso in cui si voglia riportare l'identity a 1.
DBCC CHECKIDENT ('nome_tabella', RESEED)
In questo caso invece l'identity viene riportata al valore più alto presente nella tabella.
5e7ba9b0-ce09-429c-b9da-aa01edaed1ac|0|.0