我的数据库中只有一条记录," action_taken" column设置为NULL。我怎么能让PDO找到它?
如果我直接在SQL中输入查询,它将按预期工作。
注意:这只是一个测试脚本来说明我的问题。大多数传递的值都是字符串,但偶尔值为NULL。
include ('include/mysql.php');
$sql = 'SELECT * FROM returns WHERE action_taken = :action';
$sth = $dbh->prepare($sql);
$param = null;
$sth->bindValue(':action', $param, PDO::PARAM_STR);
$sth->execute();
if ($sth->rowCount())
{
echo 'FOUND YOU!';
}
else
{
echo 'NOOOO :(';
}
答案 0 :(得分:0)
基本上,你不能说“等于null”。它必须始终为IS
null:
$sql = 'SELECT * FROM returns WHERE action_taken IS :action';
如果可能的话,你最好不要使用NULL
。