在SQL2008中我要创建个更新(UPDATE)触发器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SQL2008中我要创建个更新(UPDATE)触发器相关的知识,希望对你有一定的参考价值。

实现的功能:如果更新的是主键就调用触发器,如果不是主键就不调用触发器,直接更新
说得详细点
两个表,一个是学生,里面有学生ID,学生姓名,学号。另一个是课程班学生,里面有课程班ID,学生ID,成绩
要求:当更新学生表里的学生ID时,会调用触发器,更新课程班里的学生ID。 如果更新的时学生表里的其他,则就直接更新,不用触发器

参考技术A 我给你语言描述吧

IF :NEW。主键 ! = :OLD 。主键 THEN --如果主键更新了
执行触发器
ELSE
NULL
END IF;

完整过程

CREATE OR REPLACE TRIGGER 名字
BEFORE UPDATE
ON 表名
FOR EACH ROW
DECLARE
自定义字段
BEGIN
IF update THEN

IF :NEW。主键 ! = :OLD 。主键 THEN --如果主键更新了
执行触发器
ELSE
NULL
END IF;
END IF;
END;
END 触发器名称

信息来源:饭客网络

以上是关于在SQL2008中我要创建个更新(UPDATE)触发器的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 2008 update语句只能更新1行数据?

sql在update更新时如何快速且大批量的更新数据(C#中写的)

SQL Server Update:使用 TOP 限制更新的数据

SQL - 执行 UPDATE 的最快方法

在Oracle触发器中如何执行多条update语句?

更新触发器 SQL Server 2008