SQL分布计算时出现问题?

visiond 2000-07-16 09:55:00
我想Select WEB服务器上的数据插入到我本地的SQL服务器(我的WEB数据库是在外面托管主机上,而我内部通过拔号上网,并且本地数据库已经通过 Linket Servers正常连结到外部的服务器)
当在本地执行执行下面的存储过程时出现:
CREATE Procedure u_Dtc_out
/*
测试DTC
*/
As
Set nocount on

Begin distributed tran testDtc

insert into tabLocTest values('OK')

exec [202.103.134.239].zx..proTest

if @@error > 0
rollback tran
else
Commit tran
return

当我执行时出现:
Server: Msg 7391, Level 16, State 1, Procedure u_Dtc_out, Line 12
The operation could not be performed because the OLE DB provider 'SQLOLEDB' does not support distributed transactions.
[OLE/DB provider returned message: 分布事务处理错误]


为什么?
...全文
181 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
voyager 2001-04-30
  • 打赏
  • 举报
回复
no one help me?
wwl007 2001-04-30
  • 打赏
  • 举报
回复
其实你的这个问题和那个一样!
开始也是用
这些
//产生连接
这个问提分为三部分
1.连接
我的这个例子是与oracle连接,其中wwl是服务器别名,
--exec sp_addlinkedserver "oraclesvr","Oracle 7.3","MSDAORA","wwl"
go
2.设置登陆口令
也就是你用什么身份登陆
//设置登陆口令
--EXEC sp_addlinkedsrvlogin 'oraclesvr', 'false', NULL, 'system', 'manager'

3.查询语句
//查询
--SELECT *
--FROM OPENQUERY(OracleSvr, 'SELECT * FROM tab')
具体参数的意思!你可以查找sql server 关于sp_addlinkedserver 、sp_addlinkedsrvlogin 、OPENQUERY的帮助
然后如果你是sql server对sql server我想没有这吗麻烦!
你可以
select * from 服务器名.数据库名.表明.用户名/*这样就可以了*/
好了不说了!
认为有道理要给我分啊!
wwq_jeff 2001-04-30
  • 打赏
  • 举报
回复
sorry,写的有误,正确的是:
sp_addlinkserver [128.x.x.xx] --默认为Sqlserver数据源和OLEDB For sqlserver的驱动程序。
select * From [128.x.x.xx].[database].dbo.[tablename]
exec [128.x.x.xx].[database].dbo.[sp_test]
wwq_jeff 2001-04-30
  • 打赏
  • 举报
回复
1、如果不行,很可能是本地没有固定IP。
2、OLEDB Provider没有选择正确。
3、试试是不是没有使用sp_addlinkedserver(以下代码只是在局域网通过)。
sp_addlinkserver "128.x.x.xx" --默认为Sqlserver数据源和OLEDB For sqlserver的驱动程序。
select * From [128.x.x.xx].[database].dbo.[tablename]
exec [128.x.x.xx].[database].dbo.[sp_test]
voyager 2001-04-29
  • 打赏
  • 举报
回复
快帮帮忙吧,
voyager 2001-04-29
  • 打赏
  • 举报
回复
解决了没有啊,我快被这个问题给搞死了,FT,有哪位高手高高手快帮忙解决一下吧
yangzi 2001-02-12
  • 打赏
  • 举报
回复
不行的。由于拨号上网,本地没有固定的IP。所以不行。
dqj 2001-02-12
  • 打赏
  • 举报
回复
:
shujian 2000-07-17
  • 打赏
  • 举报
回复
exec [202.103.134.239].zx..proTest
[202.103.134.239]用机器名来写会更好的!!



visiond 2000-07-17
  • 打赏
  • 举报
回复
不行的,如果你要连接的是SQL数据库,你在数据库连接远程数据库时就需要用IP地址才可以连上,并且没有为这个IP指定别名,其实用IP地址我在内部的两个SQL上是可以的。

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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