本帖最后由 加菲喵 于 2015-9-10 16:47 编辑
自增长id导致的重复填报
1. 问题描述
当填报表使用数据库自增长ID,并且数据展示在页面上,提交入库时已有的数据总是会进行重复提交。在一般的填报中,可以通过设置主键和未修改不提交来控制。但在id自增长的情况下,如果页面端展示了id字段,此时如果数据由excel导入,页面上的部分数据会被覆盖,这种设置方法会导致数据库已有数据发生更改;如果没页面端没有展示出id字段,提交时会导致页面上已有数据再次提交。这种情况下有什么解决方法呢?
2. 实现思路
针对上述问题,可以引入一个判断字段,状态设置为0和1,页面上将要入库的字段置为0,入库后自动记为1,这样就可以判断哪些是要新入库的数据,避免数据的重复提交。
3. 示例
设置一张带有自增长id的填报表,新增字段tag,如下:
填报属性设置如下,设置提交条件为tag值为0时提交,入库后的值为1。
填报时,将tag值记为0:
入库过后页面刷新,tag值变为1。当页面端有数据修改或者有excel导入的数据时,这样的方式就能保证数据库中不重复填报。
|