如何通过php更改mysql分隔符

Jey*_*mar 3 php mysql events procedure

我在mysql终端中用一组sql语句创建了一个事件,它运行正常.但是我想从php脚本创建这个事件.我的查询如下.

DELIMITER |

CREATE EVENT e_cart

ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 3 MINUTE

DO

BEGIN

SET @var_orderid = '';

SET @var_orderid = (SELECT orderid FROM order WHERE id=308);

IF @var_orderid = NULL THEN

UPDATE order SET status=1 WHERE id=308;

END IF;
END |

DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

这导致: -

错误:SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在'DELIMITER |附近使用正确的语法 在第1行的CUR'上安排事件e_cart ON SCHEDULE

如何从php脚本执行此事件?

mat*_*att 6

DELIMITER不是MySQL服务器命令,而是MySQL CLI/Query Browser/Workbench等.它只说何时向MySQL服务器发送命令.

省略DELIMITER并将整个CREATE EVENT语句作为一个命令发送,它应该可以工作.