我在 SQLite 中对多个数据库进行查询,而我在查询中使用。*时遇到问题。我已成功使用ATTACH函数来引用这两个数据库:
dbOne.execute("ATTACH DATABASE 'dbOne.sql' as db1");
dbOne.execute("ATTACH DATABASE 'dbTwo.sql' as db2");
这里的查询给出了语法错误(*附近的语法错误):
dbOne.execute("SELECT db2.myTable.* FROM db2.myTable");
我可以db2.myTable.*
吗?或者我是否必须一次选择一个列?
SELECT db2.myTable.columnA, db2.myTable.columnB, db2.myTable.columnC, etc.
谢谢!
答案 0 :(得分:2)
如果你还没有解决这个问题,这将有效:
a)dbOne.execute("SELECT * FROM db2.myTable");
b)dbOne.execute("SELECT abc.* FROM db2.myTable abc");
此外,当表名在所有连接的数据库中唯一时,您不必指定数据库名称。
b)通常在您选择或加入多个表格时使用,例如:
SELECT abc.*, xyz.* FROM db2.myTable abc, db1.myOtherTable xyz