create trigger [upda] on [aa]
   for update
   as 
   update bb
   set bb.name=(select * from inserted)
   from bb,deleted
   where bb.name=deleted.name
   aa和bb都是一个数据库的两个表
   当表aa的name字段的值时修改时,表bb的name字段的值不会
   随之改变,请帮我看看问题出在哪
   以上代码是写在sql服务器中的

解决方案 »

  1.   

    create trigger [upda] on [aa]
       for update
       as 
       update a
       set a.name=c.name
       from bb a join deleted b on bb.name=deleted.name
       join inserted c on b.主键 = c.主键
      

  2.   

    create trigger [upda] on [aa]
       for update
       as 
       update bb
       set name=inserted
       from bb,deleted,inserted
       where bb.name=deleted.name and deleted.主键 = inserted.主键
      

  3.   

    来迟了
    你不会就一个字段吧。
    select * from inserted返回多个字段,应该提示错误啊。
    马可的应该没问题,小马哥的看不大懂。第一个inserted是什么意思