我的存储过程中有以下行,用于为此存储过程授予用户权限
GRANT EXECUTE ON [dbo].[GetItem] TO [<<DBUSER>>]
使用Powershell将存储过程合并到一个大脚本中,其中我替换了&lt;&gt;带有用户名的值。
我想修改它,以便我可以向该数据库中存在的列表中的用户授予权限。例如:
GRANT EXECUTE ON [dbo].[GetItem] TO [User1, User2, User3]
是否可以使用SQL来执行此操作?我试图尽可能地减少变化。如果数据库中不存在该用户,则只会忽略它。
答案 0 :(得分:2)
根据GRANT
的{{3}},您确实可以这样做。但由于documentation,您的查询正在尝试向一个名为[User1, User2, User3]
的用户授予权限。你可能想要这个:
GRANT EXECUTE ON [dbo].[GetItem] TO [User1], [User2], [User3]
虽然戈登指出,如果可能,在这种情况下,一个小组会更容易。