MySQLi プリペアド ステートメントでの NULL 値の操作
MySQLi プリペアド ステートメントを使用する場合、NULL 値の処理は少し難しい場合があります。デフォルトでは、MySQLi は NULL 値を文字列の場合は空の文字列 ('')、整数の場合は 0 に変換します。ただし、実際の NULL 値を保存したいシナリオもあります。
真の NULL 値の保存
MySQLi プリペアド ステートメントに真の NULL 値を保存するには、次のようにします。 MySQL NULL Safe 演算子 (<>=) を利用できます。この演算子を使用すると、NULL 値を正しく比較できます。
例:
<code class="php">$price = NULL; $stmt = $mysqli->prepare("SELECT id FROM product WHERE price <> ?"); $stmt->bind_param('s', $price); // Bind the price as a string</code>
この例では、stmt は 'product' テーブルから行を選択します。 「価格」列は NULL です。 <>演算子は、NULL 値と非 NULL 値の両方をチェックするために使用され、NULL 比較を正確に処理できるようになります。
追加の注意事項:
以上がMySQLi プリペアドステートメントで真の NULL 値を保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。