如何建立一個帶有像a^b名稱的表以及同一列名稱?\n名稱?


要建立帶有此類名稱的表,我們必須使用引號字元。引號可以是單引號或雙引號,具體取決於 ANSI_QUOTES SQL 模式。 

如果此模式是已停用,則識別符號引號字元是反引號 (“`”)。考慮以下示例,我們在其中建立了一個名為‘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

如果此模式已啟用,則我們可以使用反引號 (“`”) 和雙引號 (“”) 作為引號字元。考慮以下示例,我們在其中使用這兩個引號字元建立了具有上面名稱的表,此前啟用了此模式 −

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)

更新於: 2020 年 6 月 22 日

84 次瀏覽

開啟你的 事業

透過完成課程取得認證

開始
廣告
© . All rights reserved.