首頁  >  文章  >  資料庫  >  如何在 MySQLi 準備好的語句中保留 True NULL 值?

如何在 MySQLi 準備好的語句中保留 True NULL 值?

DDD
DDD原創
2024-11-04 12:06:02470瀏覽

How to Preserve True NULL Values in MySQLi Prepared Statements?

在 MySQLi 準備語句中操作 NULL 值

使用 MySQLi 準備語句時,處理 NULL 值可能有點棘手。預設情況下,MySQLi 將字串的 NULL 值轉換為空字串 (''),將整數轉換為 0。但是,在某些情況下,您可能想要保留實際的 NULL 值。

保留 True NULL 值

要在 MySQLi 準備好的語句中儲存真正的 NULL 值,您可以使用 MySQL NULL 安全運算子 (=)。此運算符可讓您正確比較 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 比較。

附加說明:

  • 使用 NULL 時安全運算符,您必須根據列的資料類型使用正確的綁定格式。例如,將 NULL 整數綁定為整數類型而不是字串類型。
  • 對 NULL 以外的值使用 NULL 安全運算子時要小心。如果與非 NULL 值一起使用,它可能會產生意外的結果。

以上是如何在 MySQLi 準備好的語句中保留 True NULL 值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn