错误信息: 分布式事务已完成。请将此会话登记到新事务或NULL 事务中。是触发器惹的祸。

     最近在重构一个系统,数据库采用原来的,前台采用VS 2005开发。

服务器环境:  
            window   2003  server   +   sql   server   2000  

运行时,出现如上问题。

 

    在网上也看了一些解决方法,没试不知道如何。后来,仔细分析,原因是在应用程序中启用了事务,而在SQL Server中也同时开启事务。顺着这个思路,我突然想到许多人往往采用触发器来实现复杂的业务,一查,果然发现有触发器在!删除触发器,OK!

 

 

附:网上解决方案  
  若要解决此问题,您必须在配置为链接服务器且参与分布式事务的   SQL   Server   7.0   的每个实例上升级目录存储过程。您可以通过运行   SQL   Server   2000   SP3   安装文件中包括的   Instcat.sql   SQL   脚本文件来升级   SQL   Server   7.0   实例上的目录存储过程。  
   
  注意:若要升级目录存储过程,您必须具有访问   SQL   Server   2000   SP3   安装文件的权限。  
   
  若要升级目录存储过程,请对   SQL   Server   7.0   的每个实例按照下列步骤操作:1.   启动   SQL   查询分析器,然后以系统管理员身份连接到   SQL   Server   7.0   的实例。    
  2.   在“文件”菜单上,单击“打开”。    
  3.   在“打开查询文件”对话框中,找到并单击   SQL   Server   2000   SP3   安装文件中的   Instcat.sql   SQL   脚本文件。  
   
  注意:默认情况下,Instcat.sql   脚本文件位于   Full   path   of   the   setup   files   for   SQL   Server   2000   SP3/install   文件夹中。    
  4.   单击“打开”。    
  5.   在   SQL   查询分析器中,单击“查询”菜单上的“执行”。    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值