如何修复mysql查询语法错误

时间:2013-12-25 15:55:03

标签: php mysql

我正在通过教程学习一些PHP / MYSQL,并且我认为自该教程生成以来语法已经改变。请帮帮我,这是我使用PHP / MYSQL的第一步。我已经被困在这里几个小时了。与DB的连接成功,但无法查询任何数据。

我运行本地wamp服务器,这里是代码: PHP 5.4 MYSQL 5.6

这是错误:

  

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的“table”附近使用正确的语法

<?php

//error_reporting(E_ALL);
require 'connect.php';
$result = $db->query("SELECT * FROM table") or die($db->error);
print_r($result);
?>

2 个答案:

答案 0 :(得分:3)

如果table是您的表的名称,那么您需要使用后退标记来转义它:

$result = $db->query("SELECT * FROM `table`") or die($db->error);

这是因为tableMySQL reserved words之一,规则是如果您需要使用它们,则需要使用反引号进行转义。

答案 1 :(得分:1)

$result = $db->query("SELECT * FROM `table`") or die($db->error);
$result = $db->fetch_array("SELECT * FROM `table`") or die($db->error);

print_r($result);

您只是选择它。您需要将其作为数组获取。

同样@vee注意到,你需要使用反引号=&gt;因为`MySQL reserved word,所以table围绕着单词表格{{1}}。