我有超过400个sqlite数据库。我需要查询这些数据库。像简单的SELECT.....
查询一样获得结果。
我不知道在单一查询中天气是可能的。
目前的逻辑是。
foreach(FileInfo finf in Files)
{
// query one database get result
Datatable results = execute();
// merge Datatable with new one.
}
最后我们将所有数据库结果都放在单个数据表中。
有人有更好的查询多个数据库的解决方案吗?
提前致谢。
答案 0 :(得分:1)
为了使用SQLite获得单个结果集,您必须通过ATTACH command为每个数据库加入一个不同的别名,然后构建一个sql语句,将数据分组到一个结果集中SELECT ... UNION command。
例如:
- ATTACH DATABASE 'Database1' As 'DB1';
- ATTACH DATABASE 'Database2' As 'DB2';
然后:
SELECT * FROM DB1.MyTable
UNION
SELECT * FROM DB2.MyTable