根据题目要求,我们需要创建一个触发器 audit_log
,当向 employees_test
表中插入一条数据时,触发器会自动将相关数据插入到 audit
表中。以下是完整的 SQL 解决方案:
SQL 解决方案
CREATE TRIGGER audit_log
BEFORE INSERT ON employees_test
FOR EACH ROW
BEGIN
INSERT INTO audit (EMP_no, NAME)
VALUES (NEW.ID, NEW.NAME);
END;
代码说明
-
CREATE TRIGGER audit_log
CREATE TRIGGER
:用于创建一个新的触发器。audit_log
是触发器的名称。
-
BEFORE INSERT ON employees_test
- 指定触发器的触发时机和触发事件。
BEFORE INSERT
表示在向employees_test
表插入数据之前触发。
-
FOR EACH ROW
- 指定触发器对每一行插入操作分别执行。
-
BEGIN ... END
:- 包裹触发器的逻辑代码块。
-
NEW
关键字:- 在触发器中,
NEW
用于引用即将插入的行的数据。 NEW.ID
和NEW.NAME
分别表示插入的行的ID
和NAME
字段。
- 在触发器中,
-
插入到
audit
表:- 触发器将插入的
ID
和NAME
插入到audit
表中。
- 触发器将插入的