日期:2014-05-17  浏览次数:20485 次

触发器求解,谢谢大家!
有以下三张表,当更改table_b 中 c_id 时,要同步更新table_a 中c_name,要用触发器实现,请大家指导下

table_a     table_b     table_c

a_id         a_id        c_id
b_name       b_id        c_name      
c_name       c_id
------解决方案--------------------
table_a 和 table_b 是通过 a_id 字段进行关联的吗?
------解决方案--------------------
更改table_b 中 c_id 时,例如c_id 从5更新为6了。
要同步更新table_a 中c_name,把c_name更新成什么样呀?
------解决方案--------------------
Create Trigger [dbo].[trigger_Update] On [dbo].[T_B] For Update
As
 Begin
 If Update(C_Id)
   Begin
Declare @a_id int;
Declare @c_name nvarchar(50);
Select @a_id=A_Id From Inserted;
print @a_Id;
Select @c_name=c_name From T_C Where c_Id=(Select C_Id From Inserted)
  Update T_A Set C_name=@c_name Where a_id=@a_id
  End
End