无法删除 SQL Server 2008 R2 登录

8 sql-server-2008 sql-server sql-server-2008-r2

几天前我创建了一个 SQL Server 登录名。现在我需要删除相同的内容。所以我进入了 SQL Server Management Studio => Security => Logins 并选择了我想删除的登录名。它显示一条信息性消息,内容为

删除服务器登录不会删除与登录关联的数据库用户。要完成此过程,请删除每个数据库中的用户。可能需要首先将模式的所有权转移给新用户。

忽略此消息,当我确认删除过程时,我收到一个致命错误,上面写着

登录 'iis_login' 删除失败。(Microsoft.SqlServer.Smo)

执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)

此登录是 1 个作业的所有者。您必须先删除或重新分配这些作业,然后才能删除登录。(Microsoft SQL Server,错误:15170)

当登录名拥有作业(根据上面的消息)时,如何删除登录名。

问候,涅槃。

Ada*_*ger 13

如果您有很多作业并且不知道此登录名拥有哪个作业,则此查询将告诉您它们拥有的作业名称:

SELECT j.name
FROM msdb.dbo.sysjobs AS j
INNER JOIN sys.syslogins AS l ON j.owner_sid = l.sid
WHERE l.name = 'loginYouWantToDelete'
Run Code Online (Sandbox Code Playgroud)

找到工作后,您可以使用以下方法将其删除:sp_delete_job:(来自 MSDN)

EXEC msdb.dbo.sp_delete_job
    @job_name = N'JobToDelete';
Run Code Online (Sandbox Code Playgroud)