我打算爲SQLite生成查詢,這將涉及12個表上的許多連接,這些連接將超過SQLite中的64個表連接限制。 (約250個表連接或可能更多)這將最終在Android上運行。這背後的目的是在結果集中有X個用戶定義字段,具體取決於正在生成的報告。在SQlite中執行超過64個表連接的最快方法是什麼?
可惜我不是一個DBA,我不知道的最佳方式來實現這一目標。
到目前爲止,我認爲有三種選擇:
- 2使用臨時表來玩弄的結果,同時加入了最大數量可能設置。 (SQLServer的在我以前的解決方案,比較慢)
- 產生結果集數列和一鍵加入並把它們存儲在
n
臨時表。 (其中n
小於64)然後加入其公共密鑰上的所有臨時表。 - 創建一個臨時表,並一次填充一個插入或更新。
- 不要做大連接,反而執行多個選擇並填充某種數據容器。
有別的我應該考慮?
你真的需要那麼多表嗎?每個人有多少列?在這種情況下,我會說任何方法都不會在手機上快速完成,如果可能的話,在服務器上進行所有連接,並將最終結果作爲XML或JSON文件發送。 – 2011-05-05 16:01:18
我加入的表格很薄,有2-3列,但我多次加入相同的表格。我很可能會選擇通過Web服務進行處理,但是我希望用戶可以選擇在沒有數據連接的情況下在本地執行此操作。 – 2011-05-05 16:50:09
@Biff MaGriff:「我可能錯過了另一個選擇嗎?「 - 我虛心地暗示,SQLite可能不適合你正在做的任何事情。 – CommonsWare 2011-05-05 17:01:20