我正在使用普通 JDBC 连接开发应用程序。该应用程序是使用 Java-Java EE SpringsMVC 3.0 和 SQL Server 08 作为数据库开发的。我需要根据非主键列更新表。
现在,在更新表格之前,我们必须决定更新表格的方法,因为表格可能包含大量数据。更新查询将批量执行,我们需要以不占用系统资源的方式设计应用程序。
现在,我们必须在这两种方法之间做出选择,
1. 在更新之前选择数据或
2. 更新数据然后选择缺失的数据。
- 更新前选择数据只有在失败机会最大的情况下才有用,即如果执行批量 100 查询更新,并且其中只有 20 行更新成功,则应采取这种方法
- 只有当故障记录少得多时,更新数据然后检查丢失的数据才是有益的。通过这种方法,可以避免一个数据库选择调用,即在批量更新之后,可以获取更新记录的计数,并且当且仅当存在与查询不匹配的计数时才应该执行选择查询。
我们完全不了解生产环境中的系统,但我们想要应对所有可能性并想要一个更快的系统。我需要您的意见,因为这是更好的方法。