远程调用存储过程问题

cattydid 2005-02-25 10:36:39
请大虾帮忙看此段存储过程代码,看有什么问题,为什么一执行(在Query Analyzer里)会半天没反映?

CREATE PROCEDURE sp_sync
AS

declare @cid nchar(10)

if exists (select 1 from master..sysservers where srvname = 'BSERVER')
exec sp_dropserver 'BSERVER','droplogins'

exec sp_addlinkedserver 'BSERVER','','SQLOLEDB','BServer'
exec sp_addlinkedsrvlogin 'BSERVER','false',null,'sa',''
exec sp_serveroption 'BSERVER','rpc out','true'

set XACT_ABORT on
exec master..xp_cmdshell 'isql /S BSERVER /U sa /P /q "exec master..xp_cmdshell ''net start msdtc'',no_output"',no_output

exec master..xp_cmdshell 'net start msdtc', NO_OUTPUT


BEGIN DISTRIBUTED TRANSACTION
select @cid = CID from TTestTable
exec BSERVER.test..sp_del_TTestTable @cid
COMMIT TRAN
GO
...全文
82 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cattydid 2005-02-26
  • 打赏
  • 举报
回复
i try it you mentioned, but problem is still the same:(
631799 2005-02-25
  • 打赏
  • 举报
回复
alter PROCEDURE sp_sync
AS

declare @cid nchar(10)

if exists (select 1 from master..sysservers where srvname = 'BSERVER')
exec sp_dropserver 'BSERVER','droplogins'

exec sp_addlinkedserver 'BSERVER','','SQLOLEDB','BServer'
exec sp_addlinkedsrvlogin 'BSERVER','false',null,'sa',''
exec sp_serveroption 'BSERVER','rpc out','true'

set XACT_ABORT on
--exec master..xp_cmdshell 'isql /S BSERVER /U sa /P /q "exec master..xp_cmdshell ''net start msdtc'',no_output"',no_output
exec master..xp_cmdshell 'isql /S BSERVER /U sa /P /q '

exec master..xp_cmdshell 'net start msdtc', NO_OUTPUT


BEGIN DISTRIBUTED TRANSACTION
select @cid = CID from TTestTable
exec BSERVER.test..sp_del_TTestTable @cid
COMMIT TRAN
GO

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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