Warum lässt mich SQLite keine bestimmte ATTACHED-Datenbank abfragen?

Warum lässt mich SQLite keine bestimmte ATTACHED-Datenbank abfragen?


SQLite version 3.7.3
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> ATTACH DATABASE 'test.db' AS 12;
sqlite> SELECT * FROM ids;
1|hi
2|hilo
3|hiloa
4|hiloas
sqlite> .databases
seq name file
--- --------------- ----------------------------------------------------------
0 main
2 12 C:\test.db
sqlite> SELECT * FROM 12.ids;
Error: unrecognized token: "12.ids"

Warum ist es fehlerhaft? Die Daten sind eindeutig vorhanden.


Antworten:


SELECT * FROM `12`.ids;

Wenn Sie ungerade Namen verwenden (z. B. rein numerische Namen), sollten Sie diese besser korrekt maskieren.


Einige Code-Antworten


SQLite version 3.7.3 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite>
ATTACH DATABASE 'test.db' AS 12;
sqlite>
SELECT * FROM ids;
1|hi 2|hilo 3|hiloa 4|hiloas sqlite>
.databases seq name file --- --------------- ---------------------------------------------------------- 0 main 2 12 C:\test.db sqlite>
SELECT * FROM 12.ids;
Error: unrecognized token: "12.ids"
SELECT * FROM `12`.ids;