我正在尝试在插入表格后运行的mysql中编写一个触发器。插入后,它会从attrValue列获取一个值,其中attrType等于'datetime'并更新另一个名为attrMd的列。
这是我现在的尝试,但它一直说我在第4行有一个语法值:
我无法理解。任何帮助深表感谢。感谢...
AddSslCertificate
答案 0 :(得分:0)
需要考虑的一些要点:
DELIMITER
选项。@someString
)和局部变量13.6.4.1 Local Variable DECLARE Syntax(someString
)之间的差异,是不同的变量。FOR EACH ROW
)。CREATE TRIGGER upd_check BEFORE INSERT ON def_servpath_0001_weatherstation
FOR EACH ROW
BEGIN
DECLARE someString text;
-- FOR EACH ROW
BEGIN
IF NEW.atrType = 'datetime' THEN
SET @someString := NEW.atrValue;
END IF;
END;
-- FOR EACH ROW
BEGIN
IF NEW.atrType <> 'datetime' THEN
SET NEW.atrMD = someString;
END IF;
END;
END;//