如果变量为NULL,是否可以跳过更新?
查询:
$stmt = $mysqli->prepare("UPDATE personal SET name=?, gender=?, telp=?, address=?, date_deadline=? WHERE id_personal=?");
$stmt->bind_param('ssssss', $nm, $gd, $tl, $ar, $dt, $id);
在这里,我想跳过date_deadline字段。
答案 0 :(得分:1)
UPDATE personal
SET name=?, gender=?, telp=?, address=?,
date_deadline = case when ? is null
then date_deadline
else ?
end
WHERE id_personal = ?
$stmt->bind_param('sssssss', $nm, $gd, $tl, $ar, $dt, $dt, $id);
答案 1 :(得分:1)
从您解释问题的方式来看,答案看起来非常简单,请尝试以下方法:
if (is_null($myVar)) {
// Code to run if null.
} else {
// Update query here.
}
修改1:
如果 为null,则不想运行任何代码。然后执行以下操作:
if (!is_null($myVar)) {
// Code to run if not null.
}