SQL查询从IDE运行,但不在phpmyadmin中运行

Milkncookiez

我有以下SQL代码:

CREATE EVENT `update_statistics`
  ON SCHEDULE EVERY 1 DAY STARTS '2015-08-24 02:00:00'
  ON COMPLETION PRESERVE
DO BEGIN

  UPDATE statistics
  SET km_traveled     = (SELECT sum(km)
                         FROM archived_trips),
    passengers_driven = (SELECT sum(passengers)
                         FROM archived_trips),
    trips_taken       = (SELECT count(*)
                         FROM archived_trips)
  WHERE id = 1;

  UPDATE statistics
  SET co_saved = ((SELECT km_traveled
                   FROM statistics) * 0.215 * (SELECT passengers_driven
                                               FROM statistics))
  WHERE id = 1;

END;

当我通过PhpStorm中的SQL控制台运行它时-它运行良好并且计划的任务有效,依此类推。

但是,如果我尝试直接在phpmyadmin中运行查询,则会收到以下错误:

#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 13 

第13行是WHERE id=1;老实说,我没有看到查询的任何语法问题。有什么建议?

阿诺德·丹尼尔斯

查询的定界符为“;” 和 ';' 在存储过程中也使用了“”,导致查询失败。

DELIMITER //在语句之前添加,然后//以解决此问题。

DELIMITER //

CREATE EVENT `update_statistics`
  ON SCHEDULE EVERY 1 DAY STARTS '2015-08-24 02:00:00'
  ON COMPLETION PRESERVE
DO BEGIN

  UPDATE statistics
  SET km_traveled     = (SELECT sum(km)
                         FROM archived_trips),
    passengers_driven = (SELECT sum(passengers)
                         FROM archived_trips),
    trips_taken       = (SELECT count(*)
                         FROM archived_trips)
  WHERE id = 1;

  UPDATE statistics
  SET co_saved = ((SELECT km_traveled
                   FROM statistics) * 0.215 * (SELECT passengers_driven
                                               FROM statistics))
  WHERE id = 1;

END; //

DELIMITER ;

使用PHPstorm,可能会禁用一次发送多个查询,从而导致MySQL忽略定界符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

MySQL查询在phpmyadmin中工作,但不在php中

命令在终端中运行,但不在Bash脚本中运行

脚本在ISE中运行,但不在Powershell中运行

在R中运行,但不在Rscript中运行

opencv在python中运行,但不在spyder中运行

在intelliJ中运行但不在cmd中运行的Java应用

聚合查询在mongodb中运行,而不在mongoose中运行

MySQL查询不在cronjob中运行

URL在本地运行,但不在生产环境中

选择查询在“ Visual Studio”中运行,但不在浏览器中运行

C#问题获取LINQ查询结果-查询在LINQpad中运行,但不在Visual Studio中运行

查询在MySql工作台中运行,但不在Java eclipse中运行

XSLT在anypoint studio中运行,但不在CloudHub中运行

ZSH命令在Shell中运行,但不在脚本中运行

在PHPmyadmin中运行SQL查询时出错

脚本从终端运行,但不在crontab中运行

在生产中运行彪马工人,但不在开发中

Python在IDLE中运行,但不在终端上运行?

Gunicorn 自己运行,但不在 docker 容器中

INSERT 查询在 SQL 视图上运行,但不在 Visual Basic 中运行

查询在 phpmyadmin 上执行,但不在 python 脚本中执行

代码片段在 JSFiddle 中运行但不在我的 IDE 中运行(时间增加 30 分钟)?

查询在 myphpsql 页面中运行但不在 php 中

自动运行宏但不在 ThisWorkbook 中

我的代码在 VSCode 中运行但不在 DevC 中运行

Python 脚本在 IDE 中运行,但不在终端 (Kafka) 中运行

SQL 查询返回在 docker 上运行的相同结果,但不在服务器上

如果条件满足,但不在 Bash 脚本中运行

如果条件满足,但不在 Bash 脚本中运行