mon*_*962 14 database html5 offline offline-browsing
我希望能够在HTML5(iPad)网络应用程序中执行以下操作:
我对每一步都很满意,直到最后一步......
我正在尝试查找是否可以将脱机Web数据库与中央数据库同步的信息,但无法找到涵盖该主题的任何内容.是否有可能做到这一点?如果是这样,你能否提供关于它的信息的链接,或描述它如何工作足够详细,以实现我的特定应用程序?
提前致谢
小智 6
我没有专门使用HTML5本地数据库,但我使用的移动设备需要离线更新并重新同步到中央数据存储.
无论数据集是在服务器上还是在脱机客户端上创建的,我都要确保其主键是UUID.我还确保每次更新时记录时间戳.
我也不知道上次离线客户端同步的时间.
因此,当重新同步到中央数据库时,我首先向离线客户端查询自上次同步以来已更改的记录.然后,我查询中央数据库,以确定自上次同步以来是否有任何记录发生了变化.
如果他们没有在中央数据库上更改,我使用来自脱机客户端的数据更新它们.如果自上次同步以来服务器上的记录已更改,我将其更新到客户端.
如果UUID在中央服务器上不存在但在离线客户端上存在,则插入它,反之亦然.
为了清除记录,我创建了一个"清除"列,当运行sysnc查询时,我从每个数据库中删除记录(或根据应用程序要求将其标记为非活动状态).
如果自上次更新以来两个记录都已更改,则必须依赖用户输入进行协调或指定哪个记录"获胜"的规则.
我通常不信任内置数据库导入函数,除非我导入完全空的数据库.
在我看来,从我访问过的几个网站来看,(只要您使用 SQLite 作为服务器数据库)应该是可能的。
HTML5 网络数据库也使用 SQLite(尽管并非所有浏览器都支持它并且 W3C 似乎已经放弃了对它的支持)
所以...
如果您使用 .dump 命令导出数据,然后使用 $sqlite mydb.db < mydump.sql 语法将数据导入到 Web 数据库中,您应该能够通过 php 或 java 后端来完成此操作?
然后,当您想要将“离线”数据同步到服务器时,只需执行相反的从 Web 数据库转储到 dump.sql 文件并导入到服务器数据库的操作
该站点解释了从 SQLite 转储导出和导入