--在表inserted 和 deleted 表中去取当前数据。

解决方案 »

  1.   

    可以说详尽一点吗zlp321002,Sorry分数太少了,再加一点
      

  2.   

    CREATE TRIGGER trig_updatemkname ON [dbo].[pdtable] 
    FOR  INSERT, UPDATE, DELETE 
    AS
    UPDATE A
    SET A.etname = i.etname
    FROM pdtable A, inserted i
    WHERE  A.username = i.username
      

  3.   

    CREATE TRIGGER trig_updatemkname ON [dbo].[pdtable]
    FOR INSERT, UPDATE
    AS
    UPDATE pdtable
    SET etname = t.etname
    FROM pdtable A, inserted t
    WHERE A.username = t.username
      

  4.   

    不对啊,楼主,你的触发器是建立在pdtable表上的,
    你应该更新其它表才对啊,怎么会更新pdtable表呢?
      

  5.   

    --我猜楼主的意思是不是当更新pdtable表时更新store表的etname啊?
    --如果是,则:
    CREATE TRIGGER trig_updatemkname ON [dbo].[pdtable]
    FOR INSERT, UPDATE
    AS
    UPDATE store
    SET etname = t.etname
    FROM store A, inserted t
    WHERE A.username = t.username--对于delete,如果当删除pdtable表相关数据,你也要删除store表相关数据,则再新增触发器:
    CREATE TRIGGER trig_updatemkname ON [dbo].[pdtable]
    FOR DELETE
    AS
    DELETE
    FROM store A, deleted t
    WHERE A.username = t.username