首页 > 代码库 > 拒绝了对对象 'sp_OACreate' (数据库 'mssqlsystemresource',架构 'sys')的 EXECUTE 权限。

拒绝了对对象 'sp_OACreate' (数据库 'mssqlsystemresource',架构 'sys')的 EXECUTE 权限。

执行一个存储过程, 由于里面使用到了一些

--创建对象 
 EXEC sp_OACreate VBScript.RegExp, @objRegex OUT
 --设置属性 
 EXEC sp_OASetProperty @objRegex, Pattern, @pattern 
 EXEC sp_OASetProperty @objRegex, IgnoreCase, @IgnoreCase 
 EXEC sp_OASetProperty @objRegex, Global, 1 
 --执行 
 EXEC sp_OAMethod @objRegex, Replace, @retstr OUT, @string, @replacestr 
 --释放 
 EXECUTE sp_OADestroy @objRegex 

执行后提示:

获取结果集出错 exec c_NEWS_MAIN_2_p_NEWS_MAIN 18760037
1310|159|c_NEWS_MAIN_2_p_NEWS_MAIN|18760037|-1|2017-7-10 18:41:03|0|0|0
消息Seq:18760037
消息:1310|159|c_NEWS_MAIN_2_p_NEWS_MAIN|18760037|-1|2017-7-10 18:41:03|0|0|0
拒绝了对对象 ‘sp_OACreate‘ (数据库 ‘mssqlsystemresource‘,架构 ‘sys‘)的 EXECUTE 权限。
拒绝了对对象 ‘sp_OACreate‘ (数据库 ‘mssqlsystemresource‘,架构 ‘sys‘)的 EXECUTE 权限。

 

处理方法:

grant execute on sp_OADestroy to etler

 

其它存储过程同样的方法给权限

 

拒绝了对对象 'sp_OACreate' (数据库 'mssqlsystemresource',架构 'sys')的 EXECUTE 权限。