我使用了Like运算符并传递了所有参数但是以下代码仍无效:
public function get_locations($lang, $suggest){
$this->lang = $lang;
$this->suggest = $suggest;
$sql = "SELECT l.location_id, l.location_name_col
FROM test_db.location_translations as l
WHERE l.location_name_col like LIKE :suggest
AND l.language_code = :lang
";
$params = array(':suggest'=>"%".$this->suggest."%", ':lang'=> $this->lang);
$stmt = $this->conn->prepare($sql);
$stmt->execute($params);
}
我得到以下错误:
带有消息'SQLSTATE [42000]的PDOException':语法错误或访问 违规:1064您的SQL语法有错误;检查手册 对应于您的MariaDB服务器版本以获得正确的语法 在'LIKE'%A%'附近使用 AND l.language_code ='en''在第3行
请帮帮我。
答案 0 :(得分:1)
好好看看你的错误代码问题与'LIKE'参数有关,我看到你正在使用'like'和'LIKE'。我认为它应该是这样的:
$ sql =“SELECT l.location_id,l.location_name_col FROM test_db.location_translations为l WHERE l.location_name_col LIKE :建议AND l.language_code =:lang“;
如果使用上面的代码再次运行该怎么办呢?那么会发生什么?