2012-09-14 45 views
0

美好的一天。從網絡服務優化Android數據庫更新(SQLite)

我構建了一個具有SQLite數據庫的應用程序,該數據庫從使用MySQL預填充的JSON服務中檢索其內容。每天都有更新,次要名稱更改或插入,我仍不確定如何實施本地SQLite數據庫更新。

所以......我的問題是,如何優化我的應用程序數據庫的更新,其中(如果不是實時的話)它可以檢查數據庫更改並每2分鐘更新一次,如果發生變化,後臺檢查更新並插入(或更新)新內容,而不是清除以前的本地數據庫並重新填充。

在此先感謝。 :)

+0

只要一根單向複製(有沒有在本地SQLite改變)? – Selvin

+0

是的,這是一種方式。 唯一改變的是MySQL數據庫,服務於JSON,然後由本地SQLite數據庫檢索並更新。 – crimsoniris

+0

如果是的話......首先添加timestamp列到所有表中,並在更新行時更新當前時間(即時通訊談論服務器端數據庫),然後讓android在上次運行時發送複製和服務器端讓給予這個行被改變了(這就是爲什麼你需要那些時間戳列)...不要每X分鐘更新一次..當數據改變時使用GCM發送信息到android設備。 – Selvin

回答

0

您可以試試這個: 只需創建一個DBHandler類,然後編寫一個函數,將這些項插入到具有必要參數的表中。和一個刪除方法來刪除表中所有以前的記錄。

無論何時您獲取更新的數據,然後將所有數據重新插入到該表中。

這是我目前使用的解決方案之一。

檢查:To update table for every 2 minutes

相關問題