我选择了这样的代码:
mysql_query('
SELECT id, date, ip, page, get, referer
FROM iplog ORDER BY id DESC
');
我的问题是,名为get的列的名称会导致错误。
当我在此处和数据库中更改列名时,错误消失了。有什么想法吗?
答案 0 :(得分:5)
对保留字(或带空格等字符的名称)使用反引号:
SELECT id, date, ip, page, `get`, referer FROM iplog ORDER BY id DESC
get
是MySQL 5.7中的保留字。列表是here。它开始在MySQL 5.6中作为保留字出现。
答案 1 :(得分:0)
其中一个可能是您数据库的保留字。如果你不能确定哪个,也不想,用反引号包装每个名字,如:
`date`
答案 2 :(得分:0)
将名字放在像
这样的反引号中`get`
然后您的查询将如下所示:
mysql_query('
SELECT id, date, ip, page, `get`, referer
FROM iplog ORDER BY id DESC
');
因为get是mysql中的关键字/保留字