如果参数具有值,则更新记录-SQL,PHP

时间:2018-07-27 08:03:17

标签: php mysql

我当前的代码将更新所有值,并且如果有空参数,它将表上的相应字段更新为null。我只想更新具有值的字段。

这是我的代码:

$sql = "
    UPDATE drinks SET
    name        = :name,          // Mojito -> Update it
    description = :description,   // Lorem ipsum.. -> Update it
    glass_id    = :glass_id,      // NULL -> do not update
    video_url   = :video_url      // NULL -> do not update
    WHERE id = '$drinkId'
";

try {
    $db = new db();
    $db = $db->connect();
    $stmt = $db->prepare($sql);
    $stmt->bindParam(':name', $drinkName);
    $stmt->bindParam(':description', $description);   
    $stmt->bindParam(':glass_id', $glassId);
    $stmt->bindParam(':video_url', $videoUrl);
    $stmt->execute();



// Close databse
$db = null;


} catch(PDOException $e) {
    echo $e;
}

0 个答案:

没有答案