DELIMITER $$
CREATE
TRIGGER mm5
.insert_2
BEFORE INSERT ON mm5
.st_question
FOR EACH ROW
BEGIN
IF NEW.course_id IS NULL THEN
SELECT course_id INTO NEW.course_id FROM st_catalog WHERE id = NEW.catalog_id;
END IF;
END$$
DELIMITER ;
报错
1 queries executed, 0 success, 1 errors, 0 warnings
查询:CREATE TRIGGER mm5
.insert_2
BEFORE INSERT ON mm5
.st_question
FOR EACH ROW BEGIN IF NEW.course_id IS NULL THEN SELECT cou...
错误代码: 1327
Undeclared variable: NEW
你是不是其他哪里有问题,直接写一个最简单的试试看?你这个地方应该是into 一个变量,而不是new.xx,改成下边这样试试?
DELIMITER $$
CREATE TRIGGER mm5.insert_2 BEFORE INSERT ON mm5.st_question FOR EACH ROW
BEGIN
DECLARE course_id INT;
IF NEW.course_id IS NULL THEN
SELECT catalog_id INTO course_id FROM st_catalog WHERE id = NEW.catalog_id;
SET NEW.course_id = course_id;
END IF;
END$$
DELIMITER ;
CREATE TRIGGER trigger_name BEFORE UPDATE ON student FOR EACH ROW
BEGIN
IF NEW.name IS NULL THEN
SET NEW.name = '张三';
END IF;
END;