sql创建update后触发器ExamDateTri,提醒Exam数据库中题库表中被修改的记录条数
时间: 2024-03-01 11:52:06 浏览: 20
可以使用以下SQL语句创建一个update后触发器ExamDateTri:
```
CREATE TRIGGER ExamDateTri
AFTER UPDATE ON 题库表
FOR EACH ROW
BEGIN
DECLARE rows_affected INT;
SET rows_affected = ROW_COUNT();
SELECT CONCAT('题库表中被修改的记录条数为:', rows_affected) AS '提醒信息';
END;
```
该触发器会在题库表中的记录被修改后触发,通过ROW_COUNT()函数获取被修改的记录条数,并将其存储在一个变量中,最后使用SELECT语句将提醒信息输出。请将上述SQL语句中的“题库表”替换为实际的表名。
相关问题
sql 语句 创建UPDATE触发器,当Salary表中的InCome值增加500时,OutCome值则增加50。
可以使用以下 SQL 语句创建 UPDATE 触发器:
```
CREATE TRIGGER update_salary
AFTER UPDATE ON Salary
FOR EACH ROW
IF NEW.InCome > OLD.InCome THEN
UPDATE Salary
SET OutCome = OutCome + 50
WHERE employee_id = NEW.employee_id;
END IF;
```
这个触发器会在 Salary 表中 InCome 值发生变化时被触发,然后根据需要增加 OutCome 值。其中,`NEW.InCome` 表示更新后的收入值,`OLD.InCome` 表示更新前的收入值。如果更新后的收入值比更新前的收入值高,则会将该员工的 OutCome 值增加 50。`WHERE employee_id = NEW.employee_id` 表示仅更新该员工的记录。
编写数据库代码创建触发器后录入一条学生成绩,自动备份到成绩表cjb_ins中
假设我们有两个表,一个是学生成绩表 `score`,包含字段 `id`、`name`、`score`,另一个是成绩备份表 `score_backup`,包含字段 `id`、`name`、`score`、`create_time`。
我们可以使用如下的 SQL 代码创建一个触发器,在每次往 `score` 表插入一条记录时,自动将该记录备份到 `score_backup` 表中:
```sql
CREATE TRIGGER trg_score_insert
AFTER INSERT ON score
FOR EACH ROW
BEGIN
INSERT INTO score_backup(id, name, score, create_time)
VALUES (NEW.id, NEW.name, NEW.score, NOW());
END;
```
其中,`NEW` 表示插入的新记录,`NOW()` 表示当前时间。每次往 `score` 表插入一条记录时,该触发器会自动将相应的记录备份到 `score_backup` 表中,并包含当前时间信息。