尝试删除数据库用户帐户架构时出错

Jas*_*son 5 sql-server sql-server-2005 user-accounts

我正在尝试从数据库中删除用户的架构,我收到以下错误:

TITLE: Microsoft SQL Server Management Studio
------------------------------

Drop failed for Schema 'ext_owner'.  (Microsoft.SqlServer.Smo)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.4035.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Drop+Schema&LinkId=20476

------------------------------
ADDITIONAL INFORMATION:

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

------------------------------

Cannot drop schema 'ext_owner' because it is being referenced by object 'getroles'. (Microsoft SQL Server, Error: 3729)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.4035&EvtSrc=MSSQLServer&EvtID=3729&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------
Run Code Online (Sandbox Code Playgroud)

什么是getroles对象?

如何删除引用,以便删除旧用户帐户?

Aar*_*and 7

SELECT * FROM sys.objects 
WHERE name = 'getroles' 
AND schema_id = SCHEMA_ID('ext_owner');
Run Code Online (Sandbox Code Playgroud)

然后做:

DROP <object type> ext_owner.getroles;
Run Code Online (Sandbox Code Playgroud)

- 要么

ALTER SCHEMA <some other schema> TRANSFER ext_owner.getroles;
Run Code Online (Sandbox Code Playgroud)

你可能不得不重复这一次.您不能删除非空的架构.