【发布时间】:2017-08-15 10:25:21
【问题描述】:
我正在尝试编写一个将在另一个表中插入默认值的触发器
在我的学生表中插入一条记录后,我想在我的 Student_Chapter 表中插入一条新记录。
学生表有一个名为 S_ID 的字段,该字段是自动递增的,并且是该表的主键。
Student_Chapter 表有两个字段 Student_ID 整数 Chapter_ID 整数
我尝试创建此触发器以在您输入新学生记录时触发。 但是,我在尝试创建它时遇到错误……我已经尝试了几件事……并查看了此站点上的各种示例。
Create Trigger AssignDefaultChapter_trigger
Before INSERT On Students
FOR EACH ROW
BEGIN
DECLARE Default_ID INT;
SET Default_ID =(SELECT C_ID FROM Chapter WHERE ChName = "UNASSIGNED";
Insert into Student_Chapter(Chapter_ID,Student_ID) values (Default_ID,New.S_ID);
END;
据我所知,该插入没有任何问题。
我得到的错误是 #1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以了解在 '; 附近使用的正确语法。在第 6 行插入 Student_Chapter (Chapter_ID, Student_ID) 值(Default_ID,NEW.')
【问题讨论】:
标签: mysql triggers sql-insert