你好,非常喜欢你这么清晰的回答,但是这里还有好多小细节要处理。
1.现有数据库这种操作太多了,一个一个的添加太麻烦,由于开发人员的写法不同,有些使用的是原生态的写法,有些直接写SQL语句,导致没一个好的标准来处理操作记录。在这里找到了触发器,不知道是否可以解决这个问题,我在http://sqlite-sync.com/看到了这个希望。(目前来说唯一的希望了额)
2.删除,新增这俩个非常好处理,但是更新操作,想精简点,实在是自家的服务器,每一分资源都要好好利用。
不知有没有更好的思路,仍在查找答案中。
zeroonec
|
园豆:59
(初学一级)
|
2017-01-1310:05
@Nice_cj_com:同样的,你程序的层次架构应该分明,业务层做什么,数据层做什么。
业务层负责业务逻辑处理,里面不可以出现一句SQL代码
数据层再来做SQL拼接。
我的意思能明白?就是增删改,在业务层,都是数据对象,没有SQL的关系。所有需要进入数据库的操作都交给数据层来做。
?
就这个问题,你本地存的记录,应该是这样子的
时间|操作类型|ID|数据内容json
这样服务器取到之后,增删改业务都很明确。并且,在服务器接收了操作记录就清空本地操作记录或者标记,下次不再提交以前的记录。
?
触发器在这个问题上面并没有好的利用之地。
另外,你这个项目是维护,还是还没开发?
盟怀部孩
|
园豆:878
(小虾三级)
|
2017-01-1310:17
@盟怀部孩:你好,属于升级维护,老系统了,数据层代码多,有80个Activity,而且纯DB开发的库存系统,一个一个的在原有的基础上添加操作记录实在是不合理。现在就这一个问题,怎么添加操作记录了。
zeroonec
|
园豆:59
(初学一级)
|
2017-01-1310:25
@Nice_cj_com:?升级维护就蛋疼了。可能你前期没有设计好架构。
添加操作记录问题也不大,只是本地行为。相当新增了一个接口功能而已。服务器只要提供一个处理这些操作记录的服务即可,就是这个提供服务的怎么做处理会让你蛋疼些。
盟怀部孩
|
园豆:878
(小虾三级)
|
2017-01-1310:28
@Nice_cj_com:
还有另一个思路
APP上面比较简单,只是在修改数据的时候加个记录,将SQL串记录下来就可以。
然后将SQL串提交给服务器,让服务器来处理这些SQL
盟怀部孩
|
园豆:878
(小虾三级)
|
2017-01-1310:34
@盟怀部孩:你好,这个Sqlite和Mysql不大一致,需要转换,而且考虑到未来的拓展性,也有可能换Oracle,MongDB这样的,还是在本地做,在发送数据给服务器之前需要筛选掉一些东西,总的来说现在一个问题了,那就是如何在这老的系统做一个接口来进行添加操作行为了。谢谢你:)
zeroonec
|
园豆:59
(初学一级)
|
2017-01-1310:39
@Nice_cj_com:不客气,祝你早日实现功能,运行正常,老板赏识,步步高升,迎娶百富美,出任CEO,走向人生巅峰
盟怀部孩
|
园豆:878
(小虾三级)
|
2017-01-1311:03