什么是 MySQL NOT NULL 约束,我们如何在创建表时声明字段 NOT NULL?

mysqlmysqli database更新于 2024/4/2 22:27:00

实际上,MySQL NOT NULL 约束限制表的列具有 NULL 值。一旦我们将 NOT NULL 约束应用于列,我们就不能将空值传递给该列。它不能在整个表上声明,换句话说,我们可以说 NOT NULL 是列级约束。

要声明字段 NOT NULL,我们必须在 CREATE TABLE 语句中定义列时使用 NOT NULL 关键字。

示例

mysql> Create table Employee(ID Int NOT NULL, First_Name Varchar(20), Last_name Varchar(20), Designation Varchar(15));
Query OK, 0 rows affected (0.59 sec)

在上面的查询中,我们对 ‘Employee’ 表的 ‘ID’ 字段应用了 NOT NULL 约束。现在,‘ID’ 列不能接受 NULL 值。还可以从 DESCRIBE 语句中检查到 ID 字段不能接受 NULL 值。

mysql> DESCRIBE Employee123\G
*************************** 1. row ***************************
  Field: ID
   Type: int(11)
   Null: NO
    Key:
Default: NULL
  Extra:
*************************** 2. row ***************************
  Field: First_Name
   Type: varchar(20)
   Null: YES
    Key:
Default: NULL
  Extra:
*************************** 3. row ***************************
  Field: Last_name
   Type: varchar(20)
   Null: YES
    Key:
Default: NULL
  Extra:
*************************** 4. row ***************************
  Field: Designation
   Type: varchar(15)
   Null: YES
    Key:
Default: NULL
  Extra:
4 rows in set (0.03 sec)

相关文章