Blog
home > blog > Modificare l'owner delle tabelle di un database su SQL Server

Tag: SQL Server, TSQL

Modificare l'owner delle tabelle di un database su SQL Server

Vediamo un semplice script per generare l'sql per modificare l'owner di tutte le tabelle di un database in SQL Server.
di Maurizio Ceravolo
Alcune volte mi è capitato di dover lavorare su database non progettati da me ed in qualche caso le tabelle avevano un owner diverso dal classico dbo. Anzi ho trovato più di un owner nello stesso database.

In questi casi, a meno di non avere particolari vincoli sulla sicurezza, è più comodo riportare tutte le tabelle sotto lo stesso proprietario.

Il comando TSQL per farlo è l'ALTER SCHEMA, che però andrebbe scritto per ogni tabella nel database. Per evitare un lungo e noioso lavoro amanuense, possiamo farci aiutare dall'SQL.

SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + o.Name FROM sys.objects o INNER JOIN sys.Schemas s on o.schema_id = s.schema_id WHERE s.Name = 'NomeDatabase'


Dove nel codice c'è scritto NomeDatabase dovete mettere il nome del database su cui volete cambiare l'owner.
Questa query non esegue l'azione di modificare l'owner, bensì generara l'sql da eseguire per effettuare la modifica.
Copiandolo ed eseguendolo, otteniamo l'effetto desiderato.
Post correlati
2011
4
Febbraio
Dimensioni di tutte le tabelle di un database SQL Server
Maurizio Ceravolo
Vediamo una stored procedure per calcolare le dimensioni, in numero di record ed in occupazione su disco, di dati ed indici di ogni tabella di un database su SQL Server.
2011
18
Marzo
TSQL: convertire un numero in esadecimale
Maurizio Ceravolo
Alle volte c'è la necessità di convertire un numero in esadecimale direttamente dalla fonte dati per generare dei codici colore da usare direttamente su una pagina web.
2010
9
Dicembre
TSQL: concatenare più record senza usare un cursore
Maurizio Ceravolo
Concatenare più record di una tabella in un'unica stringa necessita un cursore, che però è poco performante. Vediamo un metodo tramite FOR XML PATH per concatenare con una query secca.
2010
28
Ottobre
Abilitare e disabilitare i vincoli su un database SQL Server
Maurizio Ceravolo
Due stored procedure per abilitare e disabilitare i vincoli su un database SQL Server.
2012
13
Aprile
Introducing Microsoft SQL Server 2012: Ebook gratuito
Maurizio Ceravolo
Con il rilascio di SQL Server 2012, Microsoft pubblica in maniera gratuita l'ebook "Introducing Microsoft SQL Server 2012" per iniziare a conoscere il nuovo dbms.


Archivio Mensile Blog
Tag Cloud
+1 Apple e-book evoluzionismo digitale Facebook geek Google Google+ humor infografica innovazione marketing Microsoft Programmazione Simoncelli social network social plugin Telecom Italia video Waze
Ultimi Post
I migliori di oggi
I più popolari del mese
Top post