Mysql A表更新某行的值,也同樣更新B表對應ID 的值

新建表c1

CREATE TABLE c1 (
id int(11) NOT NULL auto_increment PRIMARY KEY,
kl VARCHAR(255)
)

向表c1插入數據

INSERT INTO 
c1(kl) 
VALUES
('李'),('周'),('王'),('趙')

image.png

新建表c2

CREATE TABLE c2 (
id int(11) NOT NULL auto_increment PRIMARY KEY,
kl VARCHAR(255)
)

向表c2插入數據

INSERT INTO 
c2(kl) 
VALUES
('1'),('1'),('1'),('1')

image.png

創建觸發器c1表更新後,同樣更新c2表

create trigger c1_update_c2 after UPDATE
on c1 for  each ROW
BEGIN
UPDATE c2 set kl=new.kl where id =(select id from c1 where kl=new.kl);
end

#select id from c1 where kl=new.kl 查詢更新的值對應的ID的值是

更新表c1的kl值,查看c2對應的值

UPDATE c1 
SET kl = '李四' 
where id=1;
SELECT * from c1;
SELECT * from c2;

image.pngimage.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章