Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để tạo một bảng có tên như a ^ b cùng với tên cột? Name?


Để tạo một bảng với các loại tên như vậy, chúng ta phải sử dụng ký tự trích dẫn. Các dấu ngoặc kép có thể là đơn hoặc kép tùy thuộc vào chế độ ANSI_QUOTES SQL.

Nếu chế độ này bị tắt thì ký tự trích dẫn của mã định danh là dấu gạch ngược (“''). Hãy xem xét ví dụ sau, trong đó chúng tôi đã tạo một bảng có tên 'select' -

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; check the
manual that corresponds to your MySQL server version for the right
syntax to use near '"a^g" ("a^g" int)' at line 1

Nếu chế độ này được bật thì chúng ta có thể sử dụng dấu ngoặc kép (“` ”) và dấu ngoặc kép (“ ”) làm ký tự trích dẫn. Hãy xem xét ví dụ sau, trong đó chúng tôi tạo bảng giống như tên ở trên với sự trợ giúp của cả hai ký tự trích dẫn sau khi bật chế độ này -

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)