怎么判断表中数据是否更改?

  • 最近需要判断一下一张表如果点保存后数据是否更改,如果数据和数据库中比较没有变化则不保存,这个是需要每个字段都比较吗?还是怎么做比较好。

一般情况下只能逐字段比较,如果你希望提高效率,可以使用行版本号或者hash字段,hash字段的值是你所有字段通过hash算法得到的一个摘要

如果你必须实现数据中有某个改变才对数据库进行操作的话,的确需要对可能改变的字段进行一一对比,但是正确不这样做,如果你保存了一次,数据库有数据,那么应该进行更新即可。或者你前端做个判断,若是用户修改了某个字段,就用一个布尔值标记一下。这样根据此布尔值就可以判断是否作保存或更新

其实用redis 缓存。。。。。。。。。

可以就判断你修改了的字段

比较好的做法是不判断,但是你问的是判断,也是可以的.

给表加一个字段,比如叫md
每次修改时把数据转为一个码(比如md5),保存数据的同时把这个码保存到md字段
下一次修改使用相同的规则转为编码,如果编码相同就说明没有变化,不相同就说明改了 同时更新md为新的编码就好了

你可以把两个对象中的数据转换成json字符串然后比较这两个json字符串是否相同 相同就说明没有改变