Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để thêm ràng buộc NOT NULL vào một cột MySQL đã được tạo?

Đạt được điều này bằng cách sử dụng ALTER TABLE. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   -> (
   -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> StudentName varchar(100)
   -> );
Query OK, 0 rows affected (0.86 sec)

Hãy để chúng tôi kiểm tra mô tả của bảng -

mysql> desc DemoTable;

Điều này sẽ tạo ra kết quả sau -

+-------------+--------------+------+-----+---------+----------------+
| 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)

Đây là truy vấn để thêm ràng buộc NOT NULL vào cột khác “StudentName”, cột này không được đặt NOT NULL ban đầu -

mysql> alter table DemoTable modify StudentName varchar(100) NOT NULL;
Query OK, 0 rows affected (1.57 sec)
Records: 0 Duplicates: 0 Warnings: 0

Hãy để chúng tôi kiểm tra mô tả của bảng một lần nữa -

mysql> desc DemoTable;

Điều này sẽ tạo ra kết quả sau -

+-------------+--------------+------+-----+---------+----------------+
| 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)