giovedì 12 gennaio 2012

SQL Server: errore "The database principal owns a schema in the database, and cannot be dropped"

Oggi sono sono incappato per la prima volta nel seguente errore su SQL Server:
The database principal owns a schema in the database, and cannot be dropped. (Microsoft SQL Server, Error: 15138).
L'errore non permette, in pratica, di eliminare un utente dalla sicurezza di SQL Server.
Questo avviene quando all'utente "incriminato" è associato un ruolo di proprietario dello "schema" (i diritti di funzione) del DB.

Per ripristinare il tutto ed eliminare quindi l'utente, la soluzione è la seguente.



Attraverso l'interfaccia di SQL (MS SQL Management Studio), espandere il database [nome database], quindi Security e di seguito Schemas.
Determinate a quale proprietà è associata all'utente e ripristinatela sull'utente di default (ad esempio per lo schema "db_accessadmin" l'utente sarà "db_accessadmin").
Ora l'utente può essere eliminato!

Nessun commento:

Posta un commento