Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เปลี่ยนคอลัมน์เป็น NOT NULL ใน MySQL

ใช้ ALTER TABLE ... MODIFY column datatype NOT NULL เปลี่ยน constraint

สร้างตารางตัวอย่าง

mysql> CREATE TABLE DemoTable (
    -> UserId INT NOT NULL AUTO_INCREMENT,
    -> UserFirstName VARCHAR(100),
    -> UserLastName VARCHAR(100),
    -> UserEmailId VARCHAR(100),
    -> UserPassword VARCHAR(100),
    -> PRIMARY KEY(UserId)
    -> );

คำสั่งเปลี่ยน UserFirstName เป็น NOT NULL

mysql> ALTER TABLE DemoTable MODIFY UserFirstName VARCHAR(100) NOT NULL;

ตรวจสอบโครงสร้างตาราง

mysql> DESC DemoTable;

ผลลัพธ์ (UserFirstName กลายเป็น NO = NOT NULL):

+---------------+--------------+------+-----+---------+----------------+
| Field         | Type         | Null | Key | Default | Extra          |
+---------------+--------------+------+-----+---------+----------------+
| UserId        | int(11)      | NO   | PRI | NULL    | auto_increment |
| UserFirstName | varchar(100) | NO   |     | NULL    |                |
| UserLastName  | varchar(100) | YES  |     | NULL    |                |
| UserEmailId   | varchar(100) | YES  |     | NULL    |                |
| UserPassword  | varchar(100) | YES  |     | NULL    |                |
+---------------+--------------+------+-----+---------+----------------+

คำอธิบาย: MODIFY ต้องระบุ datatype ใหม่ครบ (VARCHAR(100)) แล้วตามด้วย NOT NULL | หากมีข้อมูล NULL อยู่แล้ว จะผิดพลาด ต้อง UPDATE ให้มีค่าก่อน | ใช้ CHANGE ได้เช่นกัน หากต้องการเปลี่ยนชื่อคอลัมน์พร้อมกับ