跨服务器调用存储过程 提示不能访问 本地调用另一个服务器的表进行查询什么的,没问题。但是调用另一个服务器的存储过程就不行,提示不能连接之类话我用的是openSource方法,这个sp_addlinkedserver方法也试过了,都不行还有什么原因吗??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 具体执行的是什么?exec link.dbname.dbo.proc_xx ?? 權限不夠或者是對方服務器沒有開啓RPC--開啓外部RPC配置,允许其它SQL Server使用RPC远程连接到本SQL ServerEXEC sp_serveroption 'mgfTS','rpc out','TRUE' (也可在企业管理器中-->数据库-->安全-->链接数据库-->点击你需要配置的链接数据库-->属性页--> "server options"-->勾选rpc out)--設定允許外聯exec sp_configure 'show advanced options',1 --開啓高級設置reconfigureexec sp_configure 'Ad Hoc Distributed Queries',1--允許openrowset opendatasource訪問reconfigureexec sp_configure 'show advanced options',0 --關閉高級設置reconfigure 我是这样操作的:select * from opendatasource('sqloledb','data source=172.17.254.13;user id=用户名;password=密码;').por_db.dbo.POR仕入伝票where 店CD = '63'这是查询一个表可以execute opendatasource('sqloledb','data source=172.17.254.13;user id=用户名;password=密码;').por_db.dbo.proc_test '63'这是执行一个存储过程(存储过程没什么特殊的),不可以PS:楼上的看不太明白,'mgfTS'这个是随便命名的吗 如果你链接了,直接这样即可.exec [172.17.254.13].por_db.dbo.proc_test '63' 我是說得使用Dblink實現的exec sp_addlinkedserver 'mgfTS', ' ', 'SQLOLEDB ', '10.192.91.47'exec sp_addlinkedsrvlogin 'mgfTS', 'false ',null, 'password', 'password'exec sp_serveroption 'mgfTS' ,'query timeout','30' ;--設置響應時間EXEC sp_serveroption 'mgfTS','rpc out','TRUE' 上面的方法还是不行,在其他的服务器上跨服务器调用存储过程,表都没问题。只是在我的数据库上调用其他服务器的存储过程都不行,表可以查询。再次说明:已经有了link的设置了是不是我的机子上有什么地方设置问题,还请SQL高人解答 问题终于解决了,感谢楼上的提醒,就是我本地服务器属性⇒连接选项卡下面的RPC选项没有选中。谢谢各位了,揭帖 求救,sql语句写错了。 请解惑:对建表的疑惑。 求SQL语句 基础问题,多表查询 create table语句中的两个".."是什么意思啊? ODBC数据源配置问题 sqlserver2000可以在存储过程里发送邮件吗? 还原失败如何解决 ? SQL表中获取时间段里每一天的数据,如果表里没有这一天的记录数据就为零 问:关于SQL2000 SQL四个表连接问题,请高手解决 求一sql语句,,
exec link.dbname.dbo.proc_xx ??
或者是對方服務器沒有開啓RPC
--開啓外部RPC配置,允许其它SQL Server使用RPC远程连接到本SQL Server
EXEC sp_serveroption 'mgfTS','rpc out','TRUE' (也可在企业管理器中-->数据库-->安全-->链接数据库-->点击你需要配置的链接数据库-->属性页-->
"server options"-->勾选rpc out)--設定允許外聯exec sp_configure 'show advanced options',1 --開啓高級設置
reconfigureexec sp_configure 'Ad Hoc Distributed Queries',1--允許openrowset opendatasource訪問
reconfigure
exec sp_configure 'show advanced options',0 --關閉高級設置
reconfigure
select * from
opendatasource('sqloledb','data source=172.17.254.13;user id=用户名;password=密码;').por_db.dbo.POR仕入伝票
where 店CD = '63'
这是查询一个表可以execute opendatasource('sqloledb','data source=172.17.254.13;user id=用户名;password=密码;').por_db.dbo.proc_test '63'
这是执行一个存储过程(存储过程没什么特殊的),不可以PS:楼上的看不太明白,'mgfTS'这个是随便命名的吗
exec [172.17.254.13].por_db.dbo.proc_test '63'
exec sp_addlinkedserver 'mgfTS', ' ', 'SQLOLEDB ', '10.192.91.47'
exec sp_addlinkedsrvlogin 'mgfTS', 'false ',null, 'password', 'password'
exec sp_serveroption 'mgfTS' ,'query timeout','30' ;--設置響應時間
EXEC sp_serveroption 'mgfTS','rpc out','TRUE'
只是在我的数据库上调用其他服务器的存储过程都不行,表可以查询。
再次说明:已经有了link的设置了
是不是我的机子上有什么地方设置问题,还请SQL高人解答
谢谢各位了,揭帖