mysql触发器在插入前更改主id

6jjcrrmo  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(342)

我的目标是防止两列成为同一个整数。

id, relative
1,4
2,4
3,4
4,4 (NO!)
5,4

如果相对值等于插入前的id,我想触发跳过一个id(主键)值。期望结果:

id, relative
1,4
2,4
3,4
5,4 
6,4

以下是我试图让触发器起作用的部分:

if new.relative=new.id then set new.id=new.id+1;
end if;

但它什么也没做。我怎样才能做到这一点?

f45qwnt8

f45qwnt81#

我不知道你是如何实现触发器的,但这是语法
代码

CREATE OR REPLACE TRIGGER same_value 
BEFORE DELETE OR INSERT OR UPDATE ON table_name 
FOR EACH ROW 
WHEN (table_name.id = table_name.relative) 
BEGIN 

# whatever you want to implement

END;

资源
https://www.tutorialspoint.com/plsql/plsql_triggers.htm

相关问题