USER เป็นคำสงวน (Reserved Word) ใน MySQL ไม่ควรใช้เป็นชื่อตารางโดยตรง
วิธีแก้: ใช้ชื่ออื่น เช่น users หรือห่อ backticks \`user\`
mysql> CREATE TABLE users (
-> UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> UserName VARCHAR(20),
-> UserAge INT
-> );
Query OK, 0 rows affected (0.51 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('Chris Brown', 28);
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('John Doe', 31);
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('John Smith', 26);
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('David Miller', 27);
Query OK, 1 row affected (0.13 sec)
mysql> SELECT * FROM users;
+--------+--------------+---------+ | UserId | UserName | UserAge | +--------+--------------+---------+ | 1 | Chris Brown | 28 | | 2 | John Doe | 31 | | 3 | John Smith | 26 | | 4 | David Miller | 27 | +--------+--------------+---------+ 4 rows in set (0.00 sec)
แนวทาง: หลีกเลี่ยงคำสงวนทั้งหมด (SELECT, INSERT, UPDATE, DELETE, USER, ORDER, GROUP, KEY, INDEX, ...)