我正在使用Spring和JDBC模板来更新一行记录,我的问题是我用于更新记录的对象可能具有一些空值,在这种情况下,我需要的是如果值为空,则使用列上的当前值而不是将该值设置为null在表中。不确定是否可以使用preparestatement实现此目的?
查询应该类似于:
所以,如果readsBook或readKindle为null,则我希望使用数据库中的当前值,而不是将它们设置为null。
查询应该类似于:
UPDATE CUSTOMER SET
activeType = ?,
readsBooks = ?,
readsKindle = ?
WHERE custID = ?
因此,在我的存储库中:
Object[] parameters = new Object[] {
customer.getActiveType,
customer.readsBooks,
customer.readsKindle
};
memberIterestsRowUpdated = jdbcTemplate.update(query, parameters);
所以,如果readsBook或readKindle为null,则我希望使用数据库中的当前值,而不是将它们设置为null。
where
子句。 - Vamsi Prabhala