2014-06-16 71 views
0

我想建立一个更新查询 - 例如更新查询使用Spring JDBC

update table A set Column 1 = ,Column 2= , Column 3..... where 
Constant selection criteria 

让我们说最大列数将被更新为3,有可为取决于一些任意一组组合业务规则,例如

Condition 1 - update only Column 1 
Condition 2 - update Column 1 and Column 2 and so on. (6 combinations in this case) 

您的方法如何构建更新查询在这种情况下?

我不使用Hibernate。

我可以想到粗略的方法来构建查询只。

+0

当您进行更新时,您是否有原始行可供您使用? – heikkim

+0

@heikkim我会那 – user1428716

回答

0

您可以查询原始行,对需要更改的值进行更改,然后更新所有列值 - 无论实际发生了什么变化。这当然会产生一些不必要的开销,但是如果执行时间/处理能力不重要,那么开销可以被接受。

+0

嗯,我想这个..lets看看有人可以用任何其他方法来 – user1428716

0

我回答因为我无法评论。 它可以使用像下面这样简单的SQL查询来完成: -

String query ="update table_name set col=something,col2=something where col3=?"; 
jdbcTemplate.update(query, yourParam);