1 riga di codice, SQL Server

Sql server da un backup ad un DB

Se dovete prendere un backup di un DB Sql server fatto da un hosting provider (per esempio usando “mylittlebackup” di Aruba) ed importarlo in un Db locale, troverete un problema: tutti gli oggetti avranno come schema l’utente del database invece che il più standard “dbo”.

Per risolvere, dopo aver importato il DB è necessario eseguire per tutti gli oggetti coinvolti uno script del genere

[sql]
ALTER SCHEMA dbo TRANSFER Mssql12345.tablename
[/sql]

(dove ‘Mssql12345’ è il nome dell’utente del DB e ‘tablename’ il nome della tabella)

questo risulta noioso se gli oggetti sono tanti, la soluzione più semplice (che non coinvolga cursori e query complesse) è quella di eseguire una query del tipo

[sql]
SELECT ‘ALTER SCHEMA dbo TRANSFER Mssql12345.’ + name
FROM sys.objects
WHERE type=’U’
[/sql]

e di usare il risultato per eseguire la query di aggiornamento dello schema…

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...