我要开发一个 android 应用程序,我想在 PC/浏览器上查看/编辑的数据。我以前没有接触过同步,所以如果有人知道任何关于数据同步的复杂性和问题的好消息来源,那就太好了。
我将有一个中央 mySql 数据库,我将如何控制从 sqlite 到 mysql 的数据同步以及何时从 PC 端更改数据。另一个可能发生的问题是数据同时写入并处理重复。
我意识到这并不是一个真正的编程问题,而且有点含糊,如果在这方面有经验的人能指出我正确的方向,那就太好了。
谢谢
我要开发一个 android 应用程序,我想在 PC/浏览器上查看/编辑的数据。我以前没有接触过同步,所以如果有人知道任何关于数据同步的复杂性和问题的好消息来源,那就太好了。
我将有一个中央 mySql 数据库,我将如何控制从 sqlite 到 mysql 的数据同步以及何时从 PC 端更改数据。另一个可能发生的问题是数据同时写入并处理重复。
我意识到这并不是一个真正的编程问题,而且有点含糊,如果在这方面有经验的人能指出我正确的方向,那就太好了。
谢谢
使用时间戳。数据库引擎自动提供它们。当您连接到您的数据库并看到您在上一次操作中存储的时间戳不同时,然后继续同步
如果您担心由于同时进行两次同步而导致数据被覆盖,请使用锁定位(数据库中具有布尔值的列或文件)。在每次同步开始时检查它是否没有“锁定”,如果没有 - 锁定数据库的剩余部分。如果它被锁定 - 请尽快再次检查并尝试再次同步数据。
为什么不实时访问数据,而不是同步数据?为了在移动设备上工作,您需要一个面向数据库的 Web 服务。您可以专门为您的目的开发它,也可以使用专门为此目的开发的通用解决方案。查看这篇博文(免责声明:我在那里工作)