【问题标题】:A query that uses variables works in PHPMyAdmin, but not in a PHP script使用变量的查询在 PHPMyAdmin 中有效,但在 PHP 脚本中无效
【发布时间】:2014-10-17 06:15:49
【问题描述】:

当我在 PHPMyAdmin 中使用 SQL 输入框时,以下查询返回预期结果,但是在 PHP MySQLi 查询 ($sql->query()) 中出现错误。

SET @a = 5;
SET @b = (SELECT `b` FROM `t` WHERE `c`=@a);
SELECT @b;

我得到的错误是:

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 2 行的 'SET @b= (SELECT b FROM `t' 附近使用正确的语法

【问题讨论】:

标签: php sql variables mysqli phpmyadmin


【解决方案1】:

您正在执行 3 个查询而不是 1 个查询,因此您需要 multi_query() 而不是 query()。

【讨论】:

  • multi_query 是否适用于单个查询?即我可以将 multi_query 用于 SELECT b` FROM t WHERE c='5'`
  • @user3887706 Executes one or multiple queries which are concatenated by a semicolon.
  • 是的,它确实有效。喜欢的手册页说Executes one or multiple queries which are concatenated by a semicolon.
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-31
  • 1970-01-01
相关资源
最近更新 更多