SQL 中的 NULL 和 NOT NULL17 Mar 2025 | 4 分钟阅读 引言NULL 和 NOT NULL 约束在数据库设计中至关重要。这些约束控制着数据库表中列中值的存在与否,从而影响数据完整性和查询结果。本文将探讨 NULL 和 NOT NULL 约束在 SQL 数据库中的相关性,包括它们的实际实现。 NULL 约束SQL 中的 NULL 值表示列中数据的缺失。它意味着需要包含的数据是未知的或未定义的。接受 NULL 值的列被认为是可空的。SQL 数据库中的大多数列默认允许 NULL 值,除非使用 NOT NULL 约束另行指定。 NULL 约束示例 考虑这种情况:您有一个名为 Students 的表,用于存储学生信息。让我们创建这个表,包含一些列,其中一列允许 NULL 值。 在此示例中
插入带有 NULL 值的数据 让我们向 Student 表添加一些示例数据。 在此数据中,插入:
查询 Student 表 此查询将返回以下输出 ![]() 输出解释
NOT NULL 约束相反,NOT NULL 约束强制要求列不能包含 NULL 值。表中的每一行都必须为该特定字段包含一个值。被标记为 NOT NULL 的列被认为是不可空的。 NOT NULL 约束示例 让我们修改 Students 表,使 Age 列为 NOT NULL。 Age 字段将不再接受 NULL 条目,确保每条学生记录都有年龄显示。 尝试进行此更改将导致错误,因为第二条记录的 Age 字段中有一个 NULL 值。但是,假设我们省略此步骤并继续查询 Students 表。 设置字段为 NOT NULL 后查询 Students 表 上述错误阻止了查询的正确执行。尽管如此,在通过更新第二条记录的正确年龄或删除该记录来修复问题后,查询将返回以下结果: ![]() 输出解释
实际应用NULL 和 NOT NULL 约束的使用对数据库架构、数据完整性和查询结果有着重大影响。
最佳实践
|
我们请求您订阅我们的新闻通讯以获取最新更新。