# 问题描述 如下图所示 ,填报表修改某一个单元格或者某一行数据后点击提交按钮 会更新当前页面所有单元格的数据,速度比较慢,能否只更新修改单元格所在的那一行数据,而不是全部数据? ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_a33e85aa78bc752a23834c06a26f06df_r.png) # 解决方案 > 填报表在提交数据时,会根据情况进行插入或者更新操作,当填报行列数较多时,速度可能较慢,因为他要对所有单元格进行操作。此时可以设置填报属性不更新未修改行,这样,相应的数据行在数据不改变时,不会参与更新操作,即SQL语句中update中不包含该行,进而提高填报的效率。但这个功能只有在填报更新数据的时候有效,如果是插入操作的话仍是插入所有字段,因此需要在使用报表主键的的基础上使用该功能。 # 方法步骤 ## 设置未修改不更新 进入报表设计页面,点击填报设置,在填报属性设置页面 设置不更新未修改行,如下图: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_9f6a0b9a9b148d7bb66bfa4b77731a05_r.png) 日志结果分析 如下图修改序号为5的的1月份的数据为为100,点击提交。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_2e03c4bbbe796ad765a23cc7ba31b13d_r.png) 此时后台执行的update语句只更新修改单元格的数据,未修改的没有更新。 可以看到,数据库只更新了再订购量改变了所在行的数据,其他行都没有改变。 ## 不设置未修改不更新 此时后台日志执行更新语句可以看到,数据库分别对每行数据都进行了更新。 >由上可见,对于大数据量、少部分修改的填报表,设置了不更新未修改行将大大提高填报的效率。