Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

usando nulos em uma instrução preparada pelo mysqli


É possível vincular um valor NULL verdadeiro às instruções preparadas (leia isto ).

Você pode, de fato, usar mysqli_bind_parameter para passar um valor NULL para o banco de dados. simplesmente crie uma variável e armazene o valor NULL (veja a página de manual para isso) na variável e vincule-a. Funciona muito bem para mim de qualquer maneira.

Assim terá que ser algo como:
<?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);
?>

Isso deve inserir um valor NULL no banco de dados.