Mysql中的字符串精确比较

时间:2016-06-30 09:57:29

标签: mysql sql

我的Mysql DB中有以下列,

 id, item_link, item_title, item_desc, created_date

在Item_title中它包含项目的标题,所以我想检查项目标题是否已经存在于DB中,而下面的查询是,

$title = "Egyptair \'Black Box\' Reveals Smoke Alert on Crashed Jet";

SELECT * FROM  `rss_feeds` WHERE  `item_title` =  '$title'

上面的倾斜已经存在于数据库中,但即使通过编写这样的查询,它也会返回

MySQL returned an empty result set (i.e. zero rows). ( Query took 0.0004 sec )

但是这个标题出现在item_title列中,任何人都可以建议我如何比较字符串并使用Mysql Query检索答案。

1 个答案:

答案 0 :(得分:1)

最好使用bind和prepare语句。它会逃避你的字符串并阻止你形成sql注入

$title = "Egyptair \'Black Box\' Reveals Smoke Alert on Crashed Jet";
$stmt = $mysqli->prepare("SELECT * FROM  `rss_feeds` WHERE  `item_title` =?");
 $stmt->bind_param('s', $title);
 /* execute prepared statement */
$stmt->execute();

阅读http://php.net/manual/en/mysqli-stmt.bind-param.php