【问题标题】:SQL error while using mysql_query() but not in PHPMyAdmin使用 mysql_query() 时出现 SQL 错误,但在 PHPMyAdmin 中没有
【发布时间】:2011-07-25 08:27:01
【问题描述】:

我收到以下错误:

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 '1' at line 1

我的查询是:

SELECT * FROM  `history` LIMIT 0 , 30

当我在 PHPMyAdmin 中运行它时,它运行良好,并且数据库连接正常。

编辑:好的,这已经解决了。我的 FTP 客户端说它正在将文件复制到服务器,但是当我尝试在 cpanle 的文件管理器中打开文件时,它已损坏。

【问题讨论】:

  • 从您的脚本中回显您的$query。您在此处发布的查询不是每个 mysql_query() 发送的查询
  • 代码行是$query = mysql_query("SELECT * FROM history LIMIT 0 , 30") or die(mysql_error());
  • 那么这可能不是导致错误的行,因为其中没有 1 就像 mysql 错误消息所说的那样。
  • @Tom,错误消息清楚地表明您的查询中有一个数字 1。这不可能是您发布的查询。
  • 就是那一行。这是目前页面上唯一的 SQL 查询。当我从行尾删除 die() 位时,错误就会出现(但显然查询仍然不起作用)。

标签: php mysql sql phpmyadmin


【解决方案1】:

尝试使用“真正的”单引号,或者在 PHP 中完全不使用它们,而不是使用 PhpMyAdmin 提供的“倾斜”单引号。

$query = "SELECT * FROM history LIMIT 0, 30";

应该可以。

【讨论】:

    【解决方案2】:

    确保您输入自己的 ',如果您从 phpmyadmin 复制查询,则撇号与您输入的不同,例如这个 'history'

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多