触发器用的非常少,不多说,上代码
- SQL code
CREATE trigger [FC_RK_CLXX_T_update] on [dbo].[FC_RK_CLXX_T] instead of update as begin if update(FC_CL_ID) or update(DJ) begin Update FC_CL_QCKC_T Set FC_CL_ID=i.FC_CL_ID,DJ=i.DJ From FC_CL_QCKC_T br , Deleted d ,Inserted i Where br.FC_RKJL_ID=i.ID end end
解释下触发器的作用:当FC_RK_CLXX_T表中的字段FC_CL_ID或者DJ发生变化时,执行该触发器。
现在有这样一个问题:我的FC_RK_CLXX_T表还有另外一个字段SFSH,我需要对这个字段进行修改,但是因为这个触发器的存在,我的这个字段SFSH无法进行修改。求指教,谢谢!!
------解决方案--------------------
- SQL code
CREATE trigger [FC_RK_CLXX_T_update] on [dbo].[FC_RK_CLXX_T] instead of update as begin if update(FC_CL_ID) or update(DJ) begin Update FC_CL_QCKC_T Set FC_CL_ID=i.FC_CL_ID,DJ=i.DJ From FC_CL_QCKC_T br , Deleted d ,Inserted i Where br.FC_RKJL_ID=i.ID end if update(SFSH) begin Update FC_CL_QCKC_T Set SFSH=i.SFSH From FC_CL_QCKC_T br , Inserted i Where br.FC_RKJL_ID=i.ID end end
------解决方案--------------------
- SQL code
--這樣建,主鍵換成你的主鍵關聯就可以了CREATE trigger [FC_RK_CLXX_T_update] on [dbo].[FC_RK_CLXX_T] instead of update as begin if update(FC_CL_ID) or update(DJ) begin Update FC_CL_QCKC_T Set FC_CL_ID=i.FC_CL_ID,DJ=i.DJ From FC_CL_QCKC_T br , Deleted d ,Inserted i Where br.FC_RKJL_ID=i.ID end if update(SFSH) update FC_RK_CLXX_T set SFSH=i.SFSH from inserted i where i.主鍵=FC_RK_CLXX_T.主鍵end