ต้องการเพิ่มข้อมูลลงในตาราง ฐานข้อมูล MySQL แต่รันคำสั่ง INSERT INTO แล้วขึ้น Error ว่า ERROR 1136 (21S01): Column count doesn't match value count at row 1 ปัญหาดังกล่าวเกิดจากอะไร ควรแก้ไขอย่างไร
+----------+-----------+------+-----+
| Field | Type | Null | Key |
+----------+-----------+------+-----+
| id | int(11) | NO | PRI |
| username | char(20) | NO | |
| password | char(20) | NO | |
+----------+-----------+------+-----+
INSERT INTO member VALUES ( NULL, 'A' );
วิธีแก้ไข
ปัญหานี้เกิดจากจำนวน columns กับข้อมูลที่จะเพิ่มลงในตารางไม่ตรงกัน ตารางมี 3 columns แต่ข้อมูลที่จะเพิ่มมีแค่ 2 ข้อมูล กรณีนี้ต้องกำหนดชื่อ columns ที่ต้องการเพิ่มไว้หลังชื่อตาราง สามารถแก้ไขคำสั่ง SQL ได้ดังนี้
INSERT INTO member (id, username) VALUES ( NULL, 'A' );