我有一些应用程序可以将数据库从sqlite同步到网站中的sqlserver。问题是我需要同步双方(服务器端和电话端)。 这意味着当用户插入/更新/删除来自网络的任何数据时,它应反映在手机中,并且当手机的数据库中进行任何更改时,它应反映在网站上。
目前我使用的是简单的方法。哪些主表由网站和交易控制在Android手机中。所以当同步过程完成时。它从Android数据库中删除所有主数据并重新创建所有内容。这需要一个过程。我只需要对网站上的主表进行更改,并且更改会反映在手机上,这是我寻找的方法。 同样,Android手机在同步时有交易记录,它会从网站中删除所有数据并重新创建。
那么,我怎样才能获得刚从Android手机和网站上新插入或更新或删除的记录....请帮助我...
答案 0 :(得分:1)
我可以给你一个粗略的想法。
使用webserveices。
1)在服务器端为每个已修改(已保存/已删除/已更新)的记录保存时间戳。 2)创建一个表,其中包含表名和时间戳以及已修改的记录。 3)当手机通过时间戳进行操作时,您的服务器应生成所有数据(执行的操作)。 (对记录使用标记(删除,更新,插入)。
在电话结束时
1)检查标志并相应地进行数据库操作。
以上是其中一部分。
现在用于同步手机与服务器之间的数据
1)创建一个datapost方法(更好地使用json和postservie的方法),使用适当的标志操作数据,如上述方法。 2)从手机获取数据后处理服务器数据。
但是您的设计还应该考虑许多用户何时可以修改服务器上的单个记录。如果这是要求,那么最好直接从webapp执行,在客户端使用webview。