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

วิธีสร้างตาราง MySQL ที่ชื่อหรือชื่อคอลัมน์มีอักขระพิเศษ เช่น a^b


ต้องใช้ Quote Character (Backtick ` หรือ Double Quote \" ขึ้นกับ ANSI_QUOTES SQL Mode)

เมื่อ ANSI_QUOTES ปิด (Default)

ใช้ Backtick เท่านั้น:

mysql> Create table `a^b`(`a^b` int);
Query OK, 0 rows affected (0.19 sec)
mysql> Create table "a^g"("a^g" int);
ERROR 1064 (42000): You have an error in your SQL syntax...

เมื่อ ANSI_QUOTES เปิด

ใช้ Backtick และ Double Quote ได้ทั้งคู่:

mysql> Set sql_mode = 'ANSI_Quotes';
Query OK, 0 rows affected (0.03 sec)
mysql> Create table "a^d"("a^d" int);
Query OK, 0 rows affected (0.21 sec)
mysql> Create table `a^e`(`a^e` int);
Query OK, 0 rows affected (0.14 sec)

สรุป: ใช้ Backtick ` ปลอดภัยที่สุด ไม่ต้องกังวล SQL Mode