我有一个SQL查询:
SELECT id, title, file_name, file_path
FROM Image
WHERE title LIKE :search
pdo sql请求的准备如下:
//$search is "karen"
$param = "%$search%":
$stmt = $db->prepare($query);
$executed = $stmt->execute(array(':search' => $param));
if(!$executed){
$error['error'] = $stmt->errorInfo();
echo json_encode($error);
exit();
}
我的问题是,%karen%
是否会被解释为sql(其中%karen%
表示karen
之前的0个或更多字符以及karen
之后的0个或更多字符或这会被解释为我在搜索具有%karen%
的标题吗?
答案 0 :(得分:0)
您可以使用concat
追加%
并直接传递参数:
SELECT id, title, file_name, file_path
FROM Image
WHERE title LIKE concat('%', :search, '%')