MySQL 如何将NOT NULL约束添加到已创建的列
使用ALTER TABLE实现。让我们首先创建一个表 –
mysql> create table DemoTable
-> (
-> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> StudentName varchar(100)
-> );
Query OK, 0 rows affected (0.86 sec)
让我们检查表的描述 –
mysql> desc DemoTable;
这将产生以下输出 –
+-------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+----------------+
| StudentId | int(11) | NO | PRI | NULL | auto_increment |
| StudentName | varchar(100) | YES | | NULL | |
+-------------+--------------+------+-----+---------+----------------+
2 rows in set (0.01 sec)
以下是将NOT NULL约束添加到最初未设置为NOT NULL的其他列“StudentName”的查询 –
mysql> alter table DemoTable modify StudentName varchar(100) NOT NULL;
Query OK, 0 rows affected (1.57 sec)
Records: 0 Duplicates: 0 Warnings: 0
让我们再次检查表的描述 –
mysql> desc DemoTable;
这将产生以下输出 –
+-------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+----------------+
| StudentId | int(11) | NO | PRI | NULL | auto_increment |
| StudentName | varchar(100) | NO | | NULL | |
+-------------+--------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
阅读更多:MySQL 教程