我有一个脚本,可以创建数据库,存储的proc,视图,表,udf。我想包含一个脚本来创建用户’user_1’并授予对数据库的执行权限。
我尝试以下为所有存储的过程创建Grant exec命令
declare @permission varchar(max) select @permission = COALESCE( @permission + '; ' + 'Grant Execute on ' + name + ' user_1', 'Grant Execute on ' + name + ' user_1') from sysobjects where xtype in ('P') exec (@permission)
但是exec (@permission)不起作用。它给
exec (@permission)
’;’附近的语法不正确。
我该如何解决?
创建登录名:创建服务器级别的登录名。然后…创建用户:让登录帐户附加到您的数据库。然后…将执行权限授予:向您的数据库中的所有sp和函数授予执行权限。如果您只想授予特定sps的权限,请使用“授予abc TO xyz执行授权”。
Create login abacadaba with password='ABVDe12341234'; Create user abacadaba for login abacadaba; Grant Execute to abacadaba;