转义SQLite数据库名称中的单引号字符



假设我有一个名为Main、AA和a 'A的数据库。两者都有一个名为MyTable的表。主数据库最初是打开的,后来附加了AA和A'A。我可以使用select * from 'AA'.'MyTable',但我找不到类似的方法来处理A'A数据库。"A"或"A"都不起作用。我不坚持转义'字符,但我需要能够处理所有可能的有效数据库名称。

不要在数据库/表/列的名字周围使用单引号。
必要时使用双引号、方括号或反引号。

当附加数据库A'A时,您可以使用如下别名:

ATTACH "c:...path..A'A.db" AS anything; 

SELECT语句中使用别名:

SELECT * FROM anything.MyTable;