t-sql创建用户并授予对存储过程的许可执行

前端之家收集整理的这篇文章主要介绍了t-sql创建用户并授予对存储过程的许可执行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个脚本创建一个数据库,存储过程,视图,表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)不起作用.它给

incorrect Syntax near ‘;’.

我该如何解决

解决方法

创建登录:创建服务器级登录.然后…
创建用户:让登录帐户附加到您的数据库.然后…
授予执行到:授予对数据库中所有sp和函数的执行权限.如果您只想授予对特定sp的权限,请使用“Grant Execute ON abc To xyz”.
Create login abacadaba with password='ABVDe12341234';
Create user abacadaba for login abacadaba;
Grant Execute to abacadaba;

猜你在找的MsSQL相关文章