2012-09-14 46 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

相关问题