我正在开发一个具有sqlite数据库的android应用程序。我想将数据从托管在Web服务器中的mySql数据库传输到sqlite数据库。当用户安装应用程序以及mysql数据库发生更改时,将发生此数据传输。为实现这一点,我希望使用JSON Web服务。我知道使用JSON Web服务实现此任务的两种方法。
使用单独的JSON响应从每个表中传输数据 mysql数据库。
使用单个JSON响应从所有表中传输数据 mysql数据库,一次。
我的问题是:在考虑速度和可靠性时,完成任务的最佳方法是什么? (1或2)
答案 0 :(得分:0)
嗯,这个问题主要是基于意见的。无论如何,在我看来,您可以创建一个额外的表来记录数据库中所有其他表的更改
即。如果您有3个表,如
1.table 1
2.table 2
和
表3
添加其他表格,例如changes_table
或其他类似table_name
和isChanged
(boolean
)的字段。并监听isChanged
字段并仅同步该表,因为这是确保数据一致性和产生更高性能的最佳方法(因为传输整个数据库显然是一个通过网络的繁重和缓慢的过程)。
答案 1 :(得分:0)
这取决于数据库大小和同步频率,
如果数据库的大小很大或将来会有,那么最好的方法是在需要时为每个表获取数据。如果单个表中的数据太大,则应通过分页实现它,即在页面的URL中传递参数。
否则,如果数据不是很大,那么第二种方法就是创建一个将遍历所有表并返回所有记录的JSON的Web服务。