如何在 MySQLi 準備好的語句中儲存 True NULL 值?

Barbara Streisand
發布: 2024-11-03 17:55:29
原創
280 人瀏覽過

How Can I Store True NULL Values in MySQLi Prepared Statements?

在MySQLi 準備語句中儲存True NULL 值

在MySQLi 中的準備語句中,NULL 值的預設行為是將其轉換如果是字串,則為空字串('');如果是整數,則為0。但是,如果您希望保留 NULL 值,可以採取特定的方法。

使用MySQL NULL 安全運算子

將真正的NULL 儲存在MySQLi 準備好的語句中,您必須使用MySQL NULL 安全運算子:

<=>
登入後複製

此運算子確保將列與NULL 進行相等或不相等比較。例如:

$price = NULL; // Note: Using php NULL without quotes
$stmt = $mysqli->prepare("SELECT id FROM product WHERE price &lt;=&gt; ?"); // Selects products with NULL prices
$stmt->bind_param($price);
登入後複製

在此範例中,查詢將檢索價格列為 NULL 的產品。如果沒有 NULL 安全運算符,查詢將不會傳回任何結果,因為 NULL 不等於空字串或 0。

範例

以下PHP 程式碼示範如何在準備好的語句中使用NULL 安全運算子:

$firstName = NULL;
$lastName = "Doe";

$stmt = $mysqli->prepare("UPDATE users SET first_name &lt;=&gt; ?, last_name = ?");
$stmt->bind_param("ss", $firstName, $lastName);
$stmt->execute();
登入後複製

此查詢將使用指定的姓氏更新使用者並保留名字的NULL 值。

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板