| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 961 人关注过本帖
标题:如何在存储过程中使用分布试查询?
取消只看楼主 加入收藏
power6d
Rank: 1
等 级:新手上路
帖 子:162
专家分:0
注 册:2006-5-23
收藏
 问题点数:0 回复次数:3 
如何在存储过程中使用分布试查询?
sp_addlinkedserver @server = 'LinkServer',
@srvproduct = ' ',
@provider = 'SQLOLEDB',
@datasrc = '192.168.100.242'


sp_addlinkedsrvlogin @rmtsrvname = 'LinkServer',
@useself = 'false',
@rmtuser = 'sa',
@rmtpassword = 'zxtzgs_sql2000'


Create Procedure Proc_Tmp
As
Begin Distributed Transaction

Select * From
LinkServer.zxzadb.dbo.YL_YDLX

Commit Transaction

Execute Proc_Tmp

结果报错:
服务器: 消息 7391,级别 16,状态 1,行 3
该操作未能执行,因为 OLE DB 提供程序 'SQLOLEDB' 无法启动分布式事务。
[OLE/DB provider returned message: 新事务不能登记到指定的事务处理器中。 ]
OLE DB 错误跟踪[OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a]。

请高手帮忙解决。
搜索更多相关主题的帖子: 服务器 Transaction LinkServer Tmp Proc 
2007-07-13 09:31
power6d
Rank: 1
等 级:新手上路
帖 子:162
专家分:0
注 册:2006-5-23
收藏
得分:0 
我用的不是ODBC。

2007-07-13 10:00
power6d
Rank: 1
等 级:新手上路
帖 子:162
专家分:0
注 册:2006-5-23
收藏
得分:0 
现在奇怪的是:
sp_addlinkedserver @server = 'LinkServer',
@srvproduct = ' ',
@provider = 'SQLOLEDB',
@datasrc = '192.168.100.242'


sp_addlinkedsrvlogin @rmtsrvname = 'LinkServer',
@useself = 'false',
@rmtuser = 'sa',
@rmtpassword = 'zxtzgs_sql2000'

Select * From
LinkServer.zxzadb.dbo.YL_YDLX

这样能执行成功,但放入事物中后就不行了。

2007-07-13 10:02
power6d
Rank: 1
等 级:新手上路
帖 子:162
专家分:0
注 册:2006-5-23
收藏
得分:0 
我的IP是192.168.100.12
服务器是192.168.100.242

2007-07-25 15:30
快速回复:如何在存储过程中使用分布试查询?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016991 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved