Maison >base de données >tutoriel mysql >Comment stocker de véritables valeurs NULL dans les instructions préparées MySQLi ?

Comment stocker de véritables valeurs NULL dans les instructions préparées MySQLi ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-02 12:59:02638parcourir

How to Store Genuine NULL Values in MySQLi Prepared Statements?

Nulls dans les instructions préparées MySQLi

Dans les instructions préparées MySQLi, les valeurs NULL sont automatiquement converties en chaînes vides pour les chaînes et en zéros pour les entiers. Cela n'est pas toujours souhaitable, surtout lorsque vous souhaitez stocker NULL en tant que véritable valeur nulle.

Solution : MySQL NULL Safe Operator

Pour stocker correctement les valeurs NULL dans une instruction préparée par MySQLi, vous devez utiliser l'opérateur sécurisé MySQL NULL, "<=>":

Syntaxe :

field_name <=> ?

Exemple :

Considérez le code PHP suivant :

<code class="php">$price = NULL; // Note: no quotes - using PHP NULL
$stmt = $mysqli->prepare("SELECT id FROM product WHERE price <=> ?"); // Will select products where the price is NULL
$stmt->bind_param('i', $price);</code>

Ce code stockera correctement NULL dans la base de données lorsque la variable $price est NULL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn