gpt4 book ai didi

mysql - 'DELIMITER' 附近的 SQL 语法错误

转载 作者:行者123 更新时间:2023-11-30 22:13:09 25 4
gpt4 key购买 nike

我想为我的数据库创建一个触发器。代码是:

DELIMITER ;

DROP TRIGGER IF EXISTS `spi_financial_request_AINS`;

DELIMITER $$

CREATE
DEFINER = CURRENT_USER
TRIGGER `spi_financial_request_AINS` AFTER INSERT ON `spi_financial_request`
FOR EACH ROW BEGIN
DECLARE ev_id INT;
IF check_audit('spi_financial_request')=1 THEN
INSERT INTO spi_audit_event(table_name, record_id,event_type,user_id)
VALUES('spi_financial_request',new.id,'INS',@user_id);
SELECT LAST_INSERT_ID() INTO ev_id;
INSERT INTO spi_audit_data(event_id,column_name,new_value)VALUES(ev_id,'id',new.id);
INSERT INTO spi_audit_data(event_id,column_name,new_value)VALUES(ev_id,'request_id',new.request_id);
INSERT INTO spi_audit_data(event_id,column_name,new_value)VALUES(ev_id,'payment_type_id',new.payment_type_id);
END IF;
END;
$$

DELIMITER ;

我已经在我的本地站点上执行了它(使用 SQLyog 和 5.6.29 版本的 MySQL)。它有效。

但是当我尝试在 DEV 服务器上使用它时(使用 PHPMyAdmin 和 5.6.32 版本的 MySQL),我遇到了一个错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER' at line 1

我真的不明白哪里出了问题。

最佳答案

DELIMITER 是一个 Mysql 控制台命令,你不能在 phpmyadmin 中使用它。要在 phpmyadmin 中设置分隔符,see this other answer

关于mysql - 'DELIMITER' 附近的 SQL 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39369832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com