我正在尝试将 INSTEAD OF 触发器部署到 Sql Azure 数据库。除其他外,它可能会执行以下行:
raiserror('error text', 20, 1, @somevar) with log;
Sql Server 中任何严重性大于或等于 20 的内容都需要“with log”命令,该命令需要 ALTER TRACE 权限。好的,没问题,除了我不知道如何授予我的 Sql Azure 用户运行它的权限。Sql Azure 不支持 sp_addrolemember,以下情况:
grant alter trace to MyUser
失败并显示此晦涩的消息:
消息 40520,级别 16,状态 1,行 1 此版本的 SQL Server 不支持安全类“服务器”。
谷歌搜索上述错误很少,而且 MSDN 的文档也很模糊。