我想在 MySQL 中创建一个触发器。我运行以下命令:
mysql> delimiter //
mysql> CREATE TRIGGER before_insert_money BEFORE INSERT ON money
-> FOR EACH ROW
-> BEGIN
-> UPDATE accounts SET balance=10.0;
-> END;
-> //
Query OK, 0 rows affected (0.19 sec)
但是当我在 phpmyadmin 中运行上面的 SQL 时,我得到这个错误:
#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 '' at line 4
这是怎么回事?如何创建触发器?
最佳答案
这是由于没有像您通过 CLI 那样临时更改分隔符造成的。试试:
CREATE TRIGGER before_insert_money BEFORE INSERT ON money
FOR EACH ROW UPDATE accounts SET balance=10.0;
或
delimiter //
CREATE TRIGGER before_insert_money BEFORE INSERT ON money
FOR EACH
ROW
BEGIN
UPDATE accounts SET balance=10.0;
END;
//
delimiter ;
参见:This question和 this question .
关于mysql - 如何在 phpmyadmin 中创建 MySQL 触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17869629/