Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come posso eliminare un utente da sql server 2012 che possiede uno schema

Devi trasferire la proprietà dello schema a qualche altro utente, probabilmente dbo , prima di rimuovere l'utente:

Per testare questo, ho fatto quanto segue:

Crea un utente proprietario dello schema e uno schema di test:

USE tempdb;
CREATE USER [testuser] WITHOUT LOGIN;
GO
CREATE SCHEMA [max] AUTHORIZATION testuser;
GO

Prova a eliminare l'utente, che fallirà:

DROP USER [testuser];
GO

Trasferisci la proprietà dello schema a un altro utente, in questo caso l'utente speciale, dbo , che possiede il database:

ALTER AUTHORIZATION ON SCHEMA::[max] TO dbo;
GO

Ora, rilascia l'utente di prova, che funziona:

DROP USER [testuser];