首页 > 数据库 > mysql教程 > 如何在 MySQLi 准备好的语句中存储 True NULL 值?

如何在 MySQLi 准备好的语句中存储 True NULL 值?

Barbara Streisand
发布: 2024-11-03 17:55:29
原创
336 人浏览过

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
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板