Devdit
 

Column count doesn't match value count at row 1 คือ วิธีแก้ไข

2.4K

ต้องการเพิ่มข้อมูลลงในตาราง ฐานข้อมูล 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' );
แก้ไข 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ