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

จะเกิดอะไรขึ้นเมื่อเราใช้ข้อจำกัด NOT NULL ด้วยคำสั่ง ALTER TABLE กับคอลัมน์ที่มีค่า NULL


ในกรณีนี้ MySQL จะส่งคืนข้อความแสดงข้อผิดพลาดเกี่ยวกับข้อมูลที่ตัดทอนสำหรับคอลัมน์ ต่อไปนี้เป็นตัวอย่างการสาธิต -

ตัวอย่าง

สมมติว่าเรามีตาราง 'test2' ซึ่งมีค่า NULL ในคอลัมน์ 'ID' ที่แถวที่ 2 ตอนนี้ หากเราจะพยายามประกาศ ID คอลัมน์เป็น NOT NULL แล้ว MySQL จะส่งคืนข้อผิดพลาดดังต่อไปนี้ -

mysql> Select * from test2;
+------+--------+
| ID   | Name   |
+------+--------+
| 1    | Gaurav |
| NULL | Rahul  |
+------+--------+
2 rows in set (0.00 sec)
mysql> ALTER TABLE TEST2 MODIFY ID INT NOT NULL;
ERROR 1265 (01000): Data truncated for column 'ID' at row 2