在虚拟主机上执行存储过程

blank3 2007-12-01 05:01:48
现在外面支持sql server的虚拟主机都不允许执行dbo的存储过程,但是允许支持用户名下存储过程如username.sp_xxx
但一般写代码的时候都不指明存储过程的owner,例如SqlCommand cmd = new SqlCommand( "yaf_topic_move" )
默认都是执行dbo下面的,在虚拟主机下执行的时候都会报错,没有dbo权限。
如果要使用一些用存储过程的第三方程序,如论坛。应该怎么办?
如果只是改存储过程的owner,如改成username.yaf_topic_move 也没用。执行的时候还是说,没有dbo权限。
难道一定要改代码吗,那要改死了还容易错误。有没有聪明的方法?
...全文
53 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
blank3 2007-12-03
  • 打赏
  • 举报
回复
只有改了?很辛苦的一件事
blank3 2007-12-02
  • 打赏
  • 举报
回复
insert into opendatasource('sqloledb','server=192.168.0.1;uid=sa;pwd=;database=GDB').GDB.dbo.GDB_Gold(Gold_UserID,Gold_Count) values(@UserID,@Gold);

这是什么呀,能解决我的问题吗
紫气东来_999 2007-12-02
  • 打赏
  • 举报
回复
难有DBO权限,
改吧,或者用自己重新写的DLL在 服务器上调用
大正他爹 2007-12-01
  • 打赏
  • 举报
回复
最笨的方法可能就是最简单的方法,
改代码吧。
qq22345111 2007-12-01
  • 打赏
  • 举报
回复
insert into  opendatasource('sqloledb','server=192.168.0.1;uid=sa;pwd=;database=GDB').GDB.dbo.GDB_Gold(Gold_UserID,Gold_Count) values(@UserID,@Gold);

把执行的地址改为Ip地址

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧