我的 Mysql 数据库中有以下几列,
id, item_link, item_title, item_desc, created_date
在 Item_title 中,它包含项目的标题,因此我想使用以下查询检查项目标题是否已存在于数据库中,
$title = "Egyptair \'Black Box\' Reveals Smoke Alert on Crashed Jet";
SELECT * FROM `rss_feeds` WHERE `item_title` = '$title'
上面的tiltle已经存在于数据库中,但即使通过编写这样的查询它也会返回
MySQL returned an empty result set (i.e. zero rows). ( Query took 0.0004 sec )
但是这个标题出现在 item_title 列中,任何人都可以建议我如何比较字符串并使用 Mysql 查询检索答案。
最佳答案
最好使用bind和prepare语句。它会转义你的字符串并防止你形成sql注入(inject)
$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();
关于mysql - Mysql 中的字符串精确比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38119769/