Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建触发器时出现MySQL语法错误_Mysql_Syntax_Triggers - Fatal编程技术网

创建触发器时出现MySQL语法错误

创建触发器时出现MySQL语法错误,mysql,syntax,triggers,Mysql,Syntax,Triggers,在创建以下触发器之后 DELIMITER $$ CREATE TRIGGER NUMERO_OS AFTER INSERT ON custom_values FOR EACH ROW BEGIN IF NEW.custom_field_id = 4 AND NEW.customized_type = 'Issue' THEN SET @os = (SELECT MAX(SUBSTRING(value FROM 1 FOR 3)) + 1 FROM custom_values WHE

在创建以下触发器之后

DELIMITER $$

CREATE TRIGGER NUMERO_OS AFTER INSERT ON custom_values
FOR EACH ROW
BEGIN

IF NEW.custom_field_id = 4 AND NEW.customized_type = 'Issue' THEN

    SET @os = (SELECT MAX(SUBSTRING(value FROM 1 FOR 3)) + 1 FROM custom_values WHERE customized_type = 'Issue' AND custom_field_id = 4 AND SUBSTRING(value FROM 5 FOR 8) = YEAR(CURDATE()));

    IF @os = NULL THEN

        @os = '001';

    END IF;

END IF;

END$$
DELIMITER ;
我在@os='001';附近发现语法错误

运行MySQL触发器应该怎么做?

尝试重复设置:

如果@os=NULL不是语法错误,而是逻辑错误。如果@os为空,则应为空。不过,这并不能解决您眼前的问题。
IF @os IS NULL THEN
    SET @os = '001';
END IF;