MySQL 如何向现有列添加非空约束
要在MySQL中向现有列添加非空约束,我们将使用ALTER命令。这是一种验证类型,用于限制用户输入空值。
让我们看一个例子。首先,我们将创建一个表。使用CREATE命令来创建表。
mysql> create table AddNotNUlldemo
- > (
- > name varchar(100)
- > );
Query OK, 0 rows affected (0.44 sec)
插入记录。
mysql> insert into AddNotNUlldemo values('John');
Query OK, 1 row affected (0.19 sec)
mysql> insert into AddNotNUlldemo values('Bob');
Query OK, 1 row affected (0.19 sec)
显示所有记录。
mysql> select *from AddNotNUlldemo;
输出结果如下。
+------+
| name |
+------+
| John |
| Bob |
+------+
2 rows in set (0.00 sec)
以下是向现有列添加约束的语法。
ALTER table yourTableName modify column_name data type constraint;
现在,让我们实现上面的语法来实现下面的查询。在这里,我们包括“not null”约束。
mysql> ALTER table AddNotNUlldemo modify name varchar(100) not null;
Query OK, 0 rows affected (1.14 sec)
Records: 0 Duplicates: 0 Warnings: 0
现在,我们无法向表“AddNotNUlldemo”插入空值,因为我们在上面设置了“not null”约束。如果我们尝试添加空值,就会出现错误。以下是一个例子。
mysql> INSERT into AddNotNUlldemo values(null);
ERROR 1048 (23000): Column 'name' cannot be null
显示所有记录。
mysql> SELECT *from AddNotNUlldemo;
输出结果如下。
+------+
| name |
+------+
| John |
| Bob |
+------+
2 rows in set (0.00 sec)
阅读更多:MySQL 教程