sql >> Databasteknik >  >> RDS >> Mysql

använda nollor i ett mysqli-förberedt uttalande

Det är möjligt att binda ett sant NULL-värde till de förberedda satserna (läs detta ).

Du kan faktiskt använda mysqli_bind_parameter för att skicka ett NULL-värde till databasen. skapa helt enkelt en variabel och lagra NULL-värdet (se manualen för det) till variabeln och bind den. Fungerar utmärkt för mig i alla fall.

Därför måste det vara något i stil med:

<?php
    $mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');

    // person is some object you have defined earlier
    $name = $person->name();
    $age = $person->age();
    $nickname = ($person->nickname() != '') ? $person->nickname() : NULL;

    // prepare the statement
    $stmt = $mysqli->prepare("INSERT INTO Name, Age, Nickname VALUES (?, ?, ?)");

    $stmt->bind_param('sis', $name, $age, $nickname);
?>

Detta bör infoga ett NULL-värde i databasen.



  1. Utför Insert-kommandot och returnera infogat Id i Sql

  2. Gruppera efter värden som är i sekvens

  3. MySQL Group av SUM

  4. Hur anger jag en unik begränsning för flera kolumner i MySQL?