update table2 set date=table1.date from table1 where table1.id=table2.id

解决方案 »

  1.   

    但是我要自动完成,怎么办?(也就是说,加入或者更新table2的date值后,刷新table1,它的date值就更新了。)
      

  2.   

    CREATE TRIGGER tri_x
    ON  table2
    FOR  INSERT, UPDATE 
    AS 
    BEGIN
    update table1 
      set date=table2.date 
      from table2 
      where table1.id=table2.id
    END
    GO
      

  3.   

    to: yoki(小马哥) 
    可以解决,不过,如果要删除table2任一行的话,要报错,怎么办?
      

  4.   

    如果要删除table2任一行的话,要报错
    这句话不明白是什么意思??
      

  5.   

    服务器: 消息 547,级别 16,状态 1,行 1
    DELETE 语句与 COLUMN REFERENCE 约束 'FK_table1_table2'冲突。该冲突发生于数据库 'use',表 'table1', column 'BackDate'。
    语句已终止。
      

  6.   

    上面是我要删除table2中一行的错误。
      

  7.   

    当然不能删除了
    因为你的 table1表中的列 backdate 是引用的table2表中外键
    你到底是要删除table2还是table1 ?
    CREATE TRIGGER tri_x
    ON  table1
    FOR  INSERT, UPDATE 
    AS 
    BEGIN
    update table2 
      set date=table1.date 
      from table1 
      where table2.id=table1.id
    END
    GO
      

  8.   

    比如说,table1.date引用的是table2.date的值.比如说我现在要删除table2中ID=1的行,同时table1中ID=1的date的值清空。
    可以实现吗?
      

  9.   

    CREATE TRIGGER tri_x
    ON  table2
    FOR  delete
    AS 
    BEGIN
      update table1 set date=null where id in (select id from deleted)
    END
    GO