我在尋找理解使用ATTACH與具有不同讀寫權限的數據庫的含義。sqlite3:只讀主數據庫和附件
我有一個場景,我需要訪問駐留在只讀文件系統中的大型數據庫(大約512MB)。還有一個小型的讀寫數據庫,具有相同的模式,駐留在讀寫文件系統中。只讀數據庫提供在我的方案中使用的基本數據,並且不常讀取數據更新存儲在讀寫數據庫中。
當前我在單獨的連接中打開這兩個數據庫,維護連接的代碼負責向客戶端呈現數據的統一視圖。例如,這意味着代碼必須合併來自只讀和讀寫數據庫的查詢結果等等。我意識到這種設置不夠優雅(並且可能不是最佳的),並且一直在尋找使用ATTACH命令來創建SQL中數據的統一視圖而不是C++。
我想知道是否有任何特定的問題涉及附加只讀和讀寫數據庫,我應該知道。我正在查看以下ATTACH場景之一:
- 以只讀數據庫爲主打開並附加讀寫數據庫。這是我首選的解決方案。
- 打開讀寫數據庫爲主,並附加只讀數據庫。
- 第三個選擇?
有幾個谷歌查詢指出消息提示方案(1)中存在問題。因爲我沒有找到明確的答案,並且因爲我自己使用sqlite 3.6.13進行的測試沒有發現任何問題,所以我發佈了這個問題。
謝謝你的任何見解。
如果主數據庫是用`SQLITE_OPEN_READONLY`標誌打開的話,這不起作用。 – ybungalobill 2016-06-03 07:47:36