关于触发器使用链接服务器问题处理.docVIP

关于触发器使用链接服务器问题处理.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于触发器使用链接服务器的问题处理 HYPERLINK /mon.php?action=viewspaceop=upitemid=616303uid=672726 上一篇 / HYPERLINK /mon.php?action=viewspaceop=nextitemid=616303uid=672726 下一篇 ?2009-10-12 10:59:41 / 个人分类: HYPERLINK /672726/spacelist-blog-itemtypeid-75998 实践 HYPERLINK /672726/viewspace-616303 \l xspace-tracks 查看( 273 ) / HYPERLINK /672726/viewspace-616303 \l xspace-itemreply 评论( 0 ) / HYPERLINK /672726/viewspace-616303 \l xspace-itemform 评分( 0 / 0 ) ? 一、??问题现象: 在一个test表上创建触发器如下: ALTERTRIGGER[TR_test_I] ON [dbo].[test] AFTERINSERT,UPDATE AS BEGIN IF EXISTS(SELECT*FROMmyTest.test.DBO.testWHEREMM_SNUMB=RTRIM(@MM_SNUMB)) BEGIN DELETEFROMmyTest.test.DBO.testWHEREMM_SNUMB=RTRIM(@MM_SNUMB) END INSERTINTOmyTest.test.DBO.test SELECT*FROMINSERTED END 当对表test进行UPDATE操作时出现如下错误: [OLE/DB provider returned message:新事务不能登记到指定的事务处理器中。] OLE DB error trace [OLE/DB Provider SQLOLEDB ITransactionJoin::JoinTransaction returned 0x8004d00a]. 消息7391,级别16,状态1,过程TR_test_I,第26行 The operation could not be performed because the OLE DB provider SQLOLEDB was unable to begin a distributed transaction. 二、??解决方案 根据网上查的资料进行了如下操作: 1.??双方启动MSDTC服务 MSDTC服务提供分布式事务服务,如果要在 HYPERLINK javascript:; \t _self 数据库中使用分布式事务,必须在参与的双方服务器启动MSDTC(Distributed Transaction Coordinator)服务。 2.??在事务开始前加入set XACT_ABORT ON语句 对于大多数OLE DB提供程序(包括 HYPERLINK javascript:; \t _self SQL HYPERLINK javascript:; \t _self Server),必须将隐式或显示事务中的数据修改语句中的XACT_ABORT设置为ON。唯一不需要该选项的情况是在提供程序支持嵌套事务时。 3.??MSDTC设置 打开“ HYPERLINK javascript:; \t _self 管理工具――组件服务”,以此打开“组件服务――计算机”,在“我的电脑”上点击右键。在MSDTC选项卡中,点击“安全配置”按钮。在安全配置窗口中做如下设置: 1)??选中“网络DTC访问” 2)??在事务管理通讯中设置时,事务发起服务器选“允许出站“, 事务处理服务器选”允许入站”,都选择”不要求进行验证” 3)??选中启用XA事务 4)??保证DTC登陆账户为:NT?? Authority\NetworkService 4.??确定后自动重启MSDTC服务 5.??重新执行对test表的UPDATE操作,执行成功。 三、??进一步 HYPERLINK javascript:; \t _self 实验 上面的方法是通过“SQLOLEDB“,创建链接服务器来进行的。 之后,我有尝试使用ODBC创建链接服务器进行 HYPERLINK javascript:; \t _self 测试时也是经过了一番波折。 1.??创建链接服务器: EXEC sp_addlinkedservermytest,,MSDASQL,test GO EXECsp_addlinkedsrvlogin myte,false

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档