Scenario: sulla macchina A ho un database in cui ho definito un utente con il diritto di db_owner; effettuo il backup di tale database (il DMBS è SQL Server 2005) e lo ripristino su una macchina B. Se, a questo punto, tramite l'SQL Server Management Studio sulla macchina B tento di eliminare l'utente in questione, ottengo un errore secondo cui non è possibile procedere perché tale utente è il proprietario di uno schema del database.
Questa situazione mi è già capitata almeno tre o quattro volte. In un caso del genere, per "trasferire" il diritto di db_owner, in modo che sia possibile procedere all'eliminazione dell'utente, è necessario eseguire il seguente comando SQL sul database incriminato:
alter authorization on schema::db_owner to db_owner
A questo punto, l'operazione di cancellazione può essere portata a termine senza problemi.
Technorati tags:
SQL,
SQL Server