当服务器数据库更新时更新sqlite数据库

问题描述:

我正在更新使用SQLITE数据库的移动设备上的数据库,应该在服务器更新它的数据库即wamp服务器时更新该数据库。
任何人都可以告诉我有关如何实现这一点的任何想法。
我不想读取整个服务器数据库,因为它会在增加数据使用率的同时读取整个数据库,仅用于单个更新或多个更新。 更新在产品表中完成,只有价格字段由服务器端更新。当服务器数据库更新时更新sqlite数据库

+0

在客户端和服务器之间同步数据RESTful API是实现它的常用方法。您可以为请求相同更新的其他用户缓存更新。无论如何,读数据库有什么问题? – biegleux 2012-07-14 06:58:58

+0

读取数据库将创建数据使用情况,如果我能够读取单个字段的值,则它将使用比较少的数据使用 – Sumit 2012-07-14 07:01:28

+0

我正在考虑创建一个单独的表来维护更新详细信息,并且用户将只读取那些更新他的数据库的详细信息..你认为这是一个好的做法? – Sumit 2012-07-14 07:04:07

您可以在您的应用程序中定义一个服务,定期询问您的服务器数据库中是否有更新的数据。在服务器端,您可以实现一个Web服务,该服务将接收一个json对象,在该对象中将放置当前日期,要检查更新的表名以及基于您的目的的其他信息。 我会用一个例子更好地解释我自己: 1)当应用程序启动后台服务时也会启动。此服务将查询(例如每3分钟)您的web服务,以查看是否有指定表的新更新。 2)Web服务将收到您想要检查的表名和日期时间,最好在unix时间戳中。例如,您想在2012-08-20 22:00:00之后查看“产品”表是否有新记录。您可以在您的应用程序中使用此信息创建json对象和http请求,并将其传递给服务器端。 3)你的网络服务将响应你提供一个json数组,包含所有2012-08-20 22:00:00之后添加或修改的数据。当然,在服务器数据库中,你必须存储这些信息(基本上每个记录都会有一个字段,包含第一次插入/最后一次修改的日期时间)
4)然后你可以更新你的本地sqlite数据库。

可能这不是很有效,但它的工作原理。

Andrea