拒绝了对对象 ’sp_sdidebug’(数据库 ‘master’,所有者 ‘dbo’)的 EXECUTE 权限
2010-11-14 18:20
453 查看
拒绝了对对象 ’sp_sdidebug’(数据库 ‘master’,所有者 ‘dbo’)的 EXECUTE 权限”,相信这个问题有很多朋友都遇到过。特别是在转移数据库的时候,由于数据库所有者的权限发生变化而导致不能执行存储过程。出现这个错误,通常是因为在创建存储过程的时候写成类似这样,CREATE/ALTER PROCEDURE [dbo].[StoredProcedureName],这样创建的存储过程所有者为dbo,即DataBaseOwner的简写,当在本地以Integrated Security=SSPI/True作为连接字符串时能够正常执行存储过程,但当把数据库移动到虚拟主机上去后,服务商不会把sa用户的密码给客户,而是给他们一个普通的用户名,通常权限很低,只能执行一个特定数据库里面的存储过程。而当这些存储过程的所有者是dbo而不是服务商提供给客户的用户名时,存储过程就不能被执行。这个时候就必须修改存储过程为如下的样式:CREATE/ALTER PROCEDURE [StoredProcedureName]
如果存储过程是一些特殊名字的话,就要加上方括号,如User,通常情况下不需要。这个时候在程序中执行存储过程,存储过程的所有者为连接字符串中指定的用户而不是dbo,这样就能够正确执行了。
如果存储过程是一些特殊名字的话,就要加上方括号,如User,通常情况下不需要。这个时候在程序中执行存储过程,存储过程的所有者为连接字符串中指定的用户而不是dbo,这样就能够正确执行了。
相关文章推荐
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限。
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限。
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象sp_sdidebug(数据库 master,所有者 dbo)的 EXECUTE 权限
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 进程跟踪时Session老丢失,日志:拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限 解决方法
- 在.net中调用时出现“拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限”的错误的解决办法。
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象 'xp_cmdshell'(数据库 'master',所有者 'dbo')的 EXECUTE 权限 解决方法
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 调试错误:拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限。
- SQL2008_SSIS___拒绝了对对象 'sp_ssis_listfolders' (数据库 'msdb',架构 'dbo')的 EXECUTE 权限。 (Microsoft SQL Server Native Client 10.0)
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限。
- 调试错误:拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
- Sql server 2005拒绝了对对象 'xx表' (数据库 'xx',架构 'dbo')的 EXECUTE 权限解决办法