在SQLite中支持表名中的方括号

时间:2014-03-27 16:44:34

标签: sqlite

我希望有一个表名

hello [world]

所以,我认为使用以下语法将起作用

create table [hello [world]]] (key INTEGER PRIMARY KEY);

我得到了

Error: unrecognized token: "]"

我想知道,SQLite是否支持方括号?

2 个答案:

答案 0 :(得分:2)

multiple methods for quoting identifiers

使用方括号时,标识符中不能包含这些字符。

使用双引号时,您可以通过将它们加倍来转义它们:

CREATE TABLE "hello ""world"""(key INTEGER PRIMARY KEY);

答案 1 :(得分:1)

尝试引用表名:

$ sqlite3 :memory:
sqlite> create table "Foo [bar]" (a int);
sqlite> .schema
CREATE TABLE "Foo [bar]" (a int);
sqlite> insert into "Foo [bar]" values(1);
sqlite> select * from "Foo [bar]";
1
sqlite> _