我有一个这样的代码块;
$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 行的"年龄"列
但是当我添加''时,它将是可为空的变量。 但是我收到此错误。我的失败在哪里?
您需要使用如下所示bindValue
:-
$Query =$db->prepare("UPDATE TblUsers
SET Age = :age
WHERE
IsActive=1 ")
$Query->bindValue(':age', $a, PDO::PARAM_INT);
$Query->execute();
bindParam
接受一个变量来引用,并且在调用bindParam
时不会拉入值。
引用:-如何使用 PDO 插入空值?