加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 数据库 > MsSql > 正文

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

发布时间:2020-05-27 19:29:24 所属栏目:MsSql 来源:互联网
导读:我有一个脚本创建一个数据库,存储过程,视图,表udf.我想包括一个脚本来创建用户’user_1’并给数据库提供执行权限. 我尝试着为所有存储过程创建grant exec命令 declare @permission varchar(max)select @permission = COALESCE( @permission + ; + Grant Execu

我有一个脚本创建一个数据库,存储过程,视图,表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;

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读