我有这样的代码块;
$a='';
$Query =$db->prepare("UPDATE TblUsers
SET Age = :age
WHERE
IsActive=1 ")
$Query->bindParam(":age",$a,PDO::PARAM_INT);
$Query->execute();
当我运行此代码时,我收到此错误;
PHP致命错误:未捕获的异常' PDOException'与消息 ' SQLSTATE [HY000]:常规错误:1366错误的整数值:''对于 专栏'年龄'在第1行'
但是当我添加'' 。但我得到这个错误。我的失败在哪里?
答案 0 :(得分:1)
您需要使用bindValue
,如下所示: -
$Query =$db->prepare("UPDATE TblUsers
SET Age = :age
WHERE
IsActive=1 ")
$Query->bindValue(':age', $a, PDO::PARAM_INT);
$Query->execute();
bindParam
接受变量,引用,并且在调用bindParam
时不会引入值。
Referecne: - How do I insert NULL values using PDO?