我在codeigniter中创建一个应用程序。我正在创建一个从数据库中搜索教程的功能。但我收到了错误。请检查我的代码。
function get_tuts($query, $limit, $offset) {
$offset = 0;
$sql = "SELECT * FROM tutorials WHERE MATCH ( title, desc ) AGAINST (?) LIMIT ? OFFSET ?";
$q = $this->db->query($sql, array($query, $limit, $offset));
if($q->num_rows() > 0){
foreach($row->result() as $row){
$data[] = $row;
}
}
return $data;
}
但我收到此错误
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 'desc ) AGAINST ('yahoo') LIMIT 10 OFFSET 0' at line 1
答案 0 :(得分:3)
单词desc
是mysql中的保留字。尝试用反引号`。
答案 1 :(得分:2)
desc
是保留字。添加`to desc:
$sql = "SELECT * FROM tutorials WHERE MATCH ( title, `desc` ) AGAINST (?) LIMIT ? OFFSET ?";
答案 2 :(得分:1)
您收到的错误消息显示desc
是MySql中的保留关键字。
use near 'desc ) AGAINST ('yahoo') LIMIT 10 OFFSET 0' at line 1