CREATE TRIGGER TR_1
ON T_1 
FOR INSERT --这个我认为就应该这样改
AS 
BEGIN
 insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted;
END

解决方案 »

  1.   

    CREATE TRIGGER TR_1
    ON T_1 
    FOR INSERT --这个我认为就应该这样改
    AS 
    BEGIN
     insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted;
    END
      

  2.   

    CREATE TRIGGER TR_1
    ON T_1 
    for INSERT
    AS 
    BEGIN
     insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted;
    END
      

  3.   

    CREATE TRIGGER TR_1
    ON T_1 
    FOR INSERT
    AS 
    BEGIN
     insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted;
    END
    goinsert into T_1(BH,RQ) values('001','2003-09-10')错误如下:
    服务器: 消息 7391,级别 16,状态 1,过程 TR_1,行 6
    该操作未能执行,因为 OLE DB 提供程序 'MSDAORA' 无法启动分布式事务。
    OLE DB 错误跟踪[OLE/DB Provider 'MSDAORA' ITransactionJoin::JoinTransaction returned 0x8004d01b]。
    可是我用
    select * from Olink..JDGA.T_1 确可以执行!
      

  4.   

    试试 yujohny(踏网无痕) 的
    不过请先把逗号去掉
      

  5.   

    CREATE TRIGGER TR_1
    ON T_1 
    INSTEAD OF INSERT
    AS 
    BEGIN
     insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted
    END
      

  6.   

    insert into Olink..JDGA.T_1(BH,RQ) values('001','2003-09-10')这样也没问题
      

  7.   

    还有就是如果触发器出错,比如Oracle服务器出故障,怎样保证Sql server数据库数据正常插入数据!??
      

  8.   

    sql server服务管理器--服务中选择第一个--启动.
      

  9.   

    msdtc服务已经启动,请继续关注.
      

  10.   

    改为这样后,问题依旧:CREATE TRIGGER TR_1
    ON T_1 
    INSTEAD OF INSERT
    AS 
    BEGIN
     SET XACT_ABORT ON
     insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted
    END----------------------------------------------------------------------------
    服务器: 消息 7391,级别 16,状态 1,过程 TR_1,行 8
    该操作未能执行,因为 OLE DB 提供程序 'MSDAORA' 无法启动分布式事务。
    OLE DB 错误跟踪[OLE/DB Provider 'MSDAORA' ITransactionJoin::JoinTransaction returned 0x8004d01b]。
      

  11.   

    改为这样后,问题依旧:CREATE TRIGGER TR_1
    ON T_1 
    INSTEAD OF INSERT
    AS 
    BEGIN
     SET XACT_ABORT ON
     insert into Olink..JDGA.T_1(BH,RQ) select BH,RQ from inserted
    END----------------------------------------------------------------------------
    服务器: 消息 7391,级别 16,状态 1,过程 TR_1,行 8
    该操作未能执行,因为 OLE DB 提供程序 'MSDAORA' 无法启动分布式事务。
    OLE DB 错误跟踪[OLE/DB Provider 'MSDAORA' ITransactionJoin::JoinTransaction returned 0x8004d01b]。