$upper = $this->db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE key='ndz_limit_up'");
$lower = $this->db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE key='ndz_limit_down'");请帮帮忙。
发布于 2014-11-21 11:39:19
因为,key是一个MySQL保留关键字。
http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
请对单词key使用反勾号。
$upper = $this->db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE `key`='ndz_limit_up'");
$lower = $this->db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE `key`='ndz_limit_down'");避免这类问题的最佳办法是:
在创建MySQL表字段时,我们应该检查DataBase保留关键字。
我们应该确保我们没有使用任何关键字作为我们的领域。
解决这个问题的方法:
1)对表名和字段名使用回勾(‘)。
2)对于表,将数据库名放在前面,如:databaseName.tableName。
字段:前面的表名,如:tableName.fieldName。
这样,MySQL将解释提供的不是MySQL保留关键字,而是数据库表或字段名。
https://stackoverflow.com/questions/27060485
复制相似问题