在行生成触发器中复制外键值

Copying a foreign key value in an row generation trigger

我正在尝试构建一个触发器,当在 tblAttendees 中创建一个新条目时,它会自动将信息填充到 tblRegistrations 中,但我不确定我应该使用什么来获取新的自动递增密钥来自 tblAttendees?

所以在代码中,Registration ID 是 tblRegistrations 的主键 auto_incremented,AttendeeID 是 tblattendees 的主键 auto_incremented,它作为外键存在于 tblRegistrations

CREATE TRIGGER trgRegistration 
AFTER INSERT ON tblattendees 
FOR EACH ROW 
INSERT INTO tblregistration (RegistrationID, AttendeeID, EventID, RegistrationDate, RegistrationPaid) 
VALUES (AUTO_INCREMENT, AUTO_INCREMENT, '3', CURRENT_DATE, '0')

当我尝试结束与会者的新条目 table 以测试触发器时,我不断收到此错误:

"#1054- 'field list'

中的未知列 'Auto_Increment'

很明显,我的值格式化方式存在问题,但我不确定如何继续。

AUTO_INCREMENTRegistrationID 如果您将 NULL 放在那里或将其从列列表中删除,则应该自行处理。

至于新生成的 AttendeeID,您可以使用 NEW 关键字访问它,它代表导致触发器 运行 的新插入行。

CREATE TRIGGER trgRegistration 
AFTER INSERT ON tblattendees 
FOR EACH ROW 
INSERT INTO tblregistrations (AttendeeID, EventID, RegistrationDate, RegistrationPaid)
VALUES (NEW.AttendeeID, '3', CURRENT_DATE, '0');