3张表:A,B,C 字段都只有ID,NAME
实现:插入A表中数据后,执行触发器,先将A中刚插入的数据与B中每条数据比较,如果有相同记录则将该记录插入到C表。就是这样...各位好心的帮帮忙...谢谢~~!

解决方案 »

  1.   

    忘记说了。A表中和B表比较后,B表中中不存在的记录也要和D表记录比较,D表中有该记录则将该记录插入到C表..就是一条记录要比两次,一次和B表一次和D表.有办法解决吗?
      

  2.   

    CREATE TRIGGER [InsertA] ON [dbo].[A] 
    FOR  INSERT
    AS
    DECLARE @m_id int
    //定义插入数据的参数SELECT @m_id=id,...FROM Inserted //其他插入数赋值
    If exists(SELECT id FROM B where id =@m_id)
       begin 
       set  @command='INSERT INTO [dbo].[C]([id]....) VALUES('+''+
            ''+ CONVERT(nvarchar(10),@m_id)  + ''+.....+  ')' 
    EXECUTE @command   END
    else
      If exists(SELECT id FROM D where id =@m_id)
      begin
       set  @command='INSERT INTO [dbo].[C]([id]....) VALUES('+''+
            ''+ CONVERT(nvarchar(10),@m_id)  + ''+.....+  ')' 
    EXECUTE @command
      end
    GO
      

  3.   

    最后..C表触发器问题,现在D表只有一个ID字段和A表相同,NAME字段不相同,与A表比较后插入到C表时,怎么把记录信息更新成和A表中的信息一样。就是更新C表中插入的记录NAME字段都和A中的一样..