第二个表上的 mySQL 触发器

标签 mysql triggers

请帮助解决此 MySQL 触发器 - 已搜索但找不到语法问题。

出现错误 #1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 '@v_index int DEFAULT 1; 附近使用的正确语法。 WHILE @v_index <= NEW.pt_number INSERT INTO Pat' 在第 9 行

DELIMITER $$

CREATE TRIGGER after_insert_calls_insert_patients

AFTER INSERT ON Calls

FOR EACH ROW

    BEGIN

    DECLARE @v_index int DEFAULT 1;

    WHILE @v_index <= NEW.pt_number

        INSERT INTO Patients SET

        Patient_id = CONCAT(NEW.Calls_id, '-', @v_index),
        FK_Calls_id = NEW.Calls_id,
        update_by = "SYSTEM";

        SET @v_index := @v_index +1;

        END WHILE;

END;
$$

DELIMITER ;

最佳答案

尝试在“DECLARE @v_index int DEFAULT 1;”中删除@

关于第二个表上的 mySQL 触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26311071/

相关文章:

php - 我应该如何在同一个表或不同的 SQL 中存储帖 subview

javascript - PHP 字符串注定会失败,你知道吗?

mysql - 触发器根据mysql中的另一个表更新来更新表

jquery - 触发点击选择元素

mysql - MySQL中使用触发器和约束限制记录数

MySQL - 如何通过字符串匹配将一个表中的值插入到另一个表中?

mysql字符集cli

python - 是否需要在 Flask 应用程序中关闭 python SQL 连接?

更新多个另一个表后mysql触发

mysql - 导致 INSERT 失败的触发器?可能的?