Error #1054 เกิดเมื่อ INSERT ค่า VARCHAR โดยไม่ห่อด้วยเครื่องหมายคำพูดเดี่ยว (')
ตัวอย่างข้อผิดพลาด
mysql> insert into DemoTable798 values(100,Adam); ERROR 1054 (42S22): Unknown column 'Adam' in 'field list'
MySQL คิดว่า Adam คือชื่อคอลัมน์ ไม่ใช่ค่าสตริง
วิธีแก้: ใส่เครื่องหมายคำพูดเดี่ยว
mysql> insert into DemoTable798 values(100,'Adam');
สร้างตารางและทดสอบแก้ไข
mysql> create table DemoTable798 ( StudentId int, StudentName varchar(100) ); Query OK, 0 rows affected (0.51 sec) mysql> insert into DemoTable798 values(100,'Adam'); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable798 values(101,'Chris'); Query OK, 1 row affected (0.19 sec) mysql> insert into DemoTable798 values(102,'Robert'); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable798 values(103,'Carol'); Query OK, 1 row affected (0.16 sec)
แสดงข้อมูล
mysql> select * from DemoTable798;
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 100 | Adam | | 101 | Chris | | 102 | Robert | | 103 | Carol | +-----------+-------------+ 4 rows in set (0.00 sec)
กฎทั่วไป: ค่าสตริง/วันที่ ต้องอยู่ใน '...' เสมอ ตัวเลข ไม่ต้อง