我试图在mySQL中创建一个触发器,当我执行插入操作时,它将使用另一个表中的数据更新colum。
我得到了表:rtsEP_groups 使用:id,name
和表:rtsEP_users with:id,groups(以及很多其他人)
我想更新rtsEP_users中的“groups”,当rtsEP_users中有新插入时,rtsEP_groups中的“id”,其中“name”为“Student”。
我正在研究这个触发器,但不确定它是否正确,以及如何完成它。 如何更新正确的列。
CREATE TRIGGER defaultGroup
AFTER INSERT ON rtsEP_users
BEGIN
DECLARE _group_id INTEGER;
SELECT id INTO _group_id FROM rtsEP_groups WHERE name = "Student"
UPDATE rtsEP_users SET groups = _group_id WHERE
答案 0 :(得分:0)
使用BEFORE INSERT
代替AFTER
,因此New
代表您可以更新的插入行。
试试这个
CREATE TRIGGER defaultGroup BEFORE INSERT ON rtsEP_users
FOR EACH ROW
SET New.groups = (SELECT id FROM rtsEP_groups WHERE name = "Student");