为了账号安全,请及时绑定邮箱和手机立即绑定

SQLite中有效的表名是什么?

SQLite中有效的表名是什么?

慕哥9229398 2019-10-29 10:13:17
要使SQLite中的表名称有效的字符组合是什么?所有字母数字组合(AZ,az和0-9)是否构成有效名称?Ex. CREATE TABLE 123abc(...);字母数字与破折号“-”和句点“。”的组合也有效吗?Ex. CREATE TABLE 123abc.txt(...);Ex. CREATE TABLE 123abc-ABC.txt(...);谢谢。
查看完整描述

3 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

我没有找到参考,但是在不使用方括号的情况下有效的表名应该是任何不以数字开头的字母数字组合:


abc123 - valid

123abc - not valid

abc_123 - valid

_123abc - valid

abc-abc - not valid (looks like an expression)

abc.abc - not valid (looks like a database.table notation)

使用方括号,您应该几乎可以使用任何东西作为表名:


[This should-be a_valid.table+name!?]


查看完整回答
反对 回复 2019-10-29
?
精慕HU

TA贡献1845条经验 获得超8个赞

所有这些都被允许,但是您可能必须在中引用它们""。


sqlite> CREATE TABLE "123abc"(col);

sqlite> CREATE TABLE "123abc.txt"(col);

sqlite> CREATE TABLE "123abc-ABC.txt"(col);

sqlite> select tbl_name from sqlite_master;

123abc

123abc.txt

123abc-ABC.txt

通常,您应该坚持字母。


查看完整回答
反对 回复 2019-10-29
?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

sqlite-users邮件列表上的Per Clemens:


允许所有内容,但以“ sqlite_”开头的名称除外。


CREATE TABLE "TABLE"("#!@""'☺\", "");

您可以使用关键字(“ TABLE”),特殊字符(“”#!@“”'☺\“)甚至空字符串(”“)。


查看完整回答
反对 回复 2019-10-29
  • 3 回答
  • 0 关注
  • 1485 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信