运行程序出现了如下的错误:
java sql SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction 仔细的分析了程序,因为我在程序中用了
con.setAutoCommit(false);
.........
con.commit(); 而在中间我调用了一个视图,这个视图远程访问了另一个数据库,然后调用的时候就出现了上面所描叙的问题.但实际上在我这边测试的时候没有问题,就是在用户那边有问题,可能他们那边的环境不一样吧.
在网上找了相关的文章:
1)http://support.microsoft.com/?scid=kb;zh-cn;329332&spid=2852&sid=318
2)http://www.cnxuexi.com/computer/chengxusheji/shujuku/4373.html
解决的办法:
1)去掉那个视图,用其它的办法获取相关的数据
2)调用视图的代码不放在事务中.
3)测试相关的环境,可能设置有问题.
那位有更好的办法一定要告诉我.谢谢!
posted on 2006-05-10 10:13
Harryson 阅读(595)
评论(0) 编辑 收藏 所属分类:
SqlServer