如何在 MySQL 中设置不为空约束(mysql不为空怎么设置)
如何在 MySQL 中设置不为空约束?
MySQL 是一种主流的关系型数据库管理系统,广泛用于各种 Web 应用程序和企业级软件。在 MySQL 中,不为空约束是一种非常重要的关系约束,它要求特定的列不能为空。本文将介绍如何在 MySQL 中设置不为空约束以及如何使用 SQL 语句进行添加、修改和删除不为空约束。
1. 创建表格时设置不为空约束
要在 MySQL 中设置不为空约束,可以在创建表格时添加 NOT NULL 关键字来指定特定的列不能为空。例如:
CREATE TABLE users (
id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
eml VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL
);
在上述代码中,每个列名后都有 NOT NULL 关键字,这表示这些列不能为空。如果尝试向该表中插入一行缺少其中任何一列的数据,MySQL 将会拒绝这个插入操作。
2. 使用 ALTER TABLE 修改表格添加不为空约束
如果已经创建了一个表格,但是需要向其中的某些列添加不为空约束,可以使用 ALTER TABLE 语句来修改表格。例如,以下代码将向上面例子中的 users 表格中添加不为空约束:
ALTER TABLE users
MODIFY name VARCHAR(255) NOT NULL,
MODIFY eml VARCHAR(255) NOT NULL,
MODIFY password VARCHAR(255) NOT NULL;
在上述代码中,使用 MODIFY 关键字指定要修改的列名以及新约束条件。运行这个语句后,将无法再向 users 表格中插入任何空值或 NULL 值。
3. 使用 ALTER TABLE 修改表格删除不为空约束
同样,如果需要删除某些列的不为空约束,也可以使用 ALTER TABLE 语句。例如,以下代码将删除上述用户表格的 eml 列的不为空约束:
ALTER TABLE users
MODIFY eml VARCHAR(255) NULL;
在上述代码中,使用 NULL 关键字指示该列可以允许空值或 NULL 值。因此,运行这个语句后,可以向 users 表格中插入空值或 NULL 值。
4. 使用 SQL 语句查询不为空约束
在查询 MySQL 数据库时,可以使用 SQL 语句检查某个列是否具有不为空约束。例如,以下代码检查 users 表格中的 name 是否具有不为空约束:
SELECT COLUMN_NAME, IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = ‘users’ AND COLUMN_NAME = ‘name’;
在上述代码中,查询 INFORMATION_SCHEMA.COLUMNS 系统表,该表包含有关数据库的详细信息。使用 WHERE 子句指定要查询的表格名称和列名。如果该列具有不为空约束,则 IS_NULLABLE 列将显示为 “NO”。
总结:
在 MySQL 中设置不为空约束是一项基本的数据库操作,可用于确保数据的完整性和准确性。通过本文,您已学习如何在 MySQL 中创建、添加、删除和查询不为空约束。尽管还有其他类型的约束可用于 MySQL,但这项基础知识是您入门 MySQL 数据库管理的好起点。