目前常用的两种方式
1 通过日志方式
每次修改单据,都保存一下本次修改的数据,这样形成修改记录,如果追溯某一次修改记录,只需要和上一次的相邻的记录做一个对比,推算出来本次修改了那部分数据。
2 通过生成新的数据
每次修改单据,在数据库中生成一条新的相同单据编号的数据,蒋被修改数据做逻辑删除处理,相当于单据表有个version字段,默认都是1,如果修改过的单据,旧数据为1,状态是物理删除。最新的这条数据version为2,状态是正常。每修改一次依次类推生成一条新记录方式。
这两种方式第一种操作简单,缺点是反查数据的时候,不能很直观的对比出来修改部分。第二种能很直观的展示修改对比,但是程序开发量上面复杂一些。也许还有更好的方式,等待以后接触实践以后补充。
网友评论