我计划为 SQLite 生成查询,这将涉及 12 个表上的许多连接,这些连接将超过 SQLite 中的 64 个表连接限制。(约 250 个表连接或可能更多)这最终将在 android 上运行。这背后的目的是根据正在生成的报告在结果集中拥有 X 数量的用户定义字段。
不幸的是,我不是 DBA,我不知道实现这一目标的最佳方法。
到目前为止,我认为选项是:
- 使用 2 个临时表来处理结果集,同时尽可能多地加入。(我之前在 SQLServer 中的解决方案,相当慢)
- 生成几列的结果集和一个键来连接并将它们存储在
n
临时表中。(其中n
小于 64)然后在它们的公共键上加入所有临时表。 - 创建一个临时表并一次填充一个插入或更新。
- 不要进行大连接,而是执行许多选择并填充某种数据容器。
还有什么我应该考虑的吗?