为什么我不能将 SQLUserAgentRole 添加到 msdb 上的 "sa" 用户?

Why can't I add SQLUserAgentRole to "sa" user on msdb?

我正在尝试将 sql 查询安排为每天 运行。为此,我需要(根据 this)使用具有 SQLUserAgentRole 数据库角色的用户。

所以我尝试将 SQLUserAgentRole 添加到 msdb 数据库上的 "sa" 用户,但我收到错误 15405:无法使用特殊主体 'dbo'.

我错过了什么?

如果您尝试将映射到数据库中用户 'dbo' 的登录名添加到 any 数据库角色,您将收到此错误消息。例如:

alter role [db_datareader] add member [dbo];

给出相同的错误信息。为什么这是一个错误,我不能说。但正如其他人在上面暗示的那样,sa 已经可以在服务器级别执行所有操作,包括所有数据库级别的权限。