-1
case
ステートメントを使用して列を更新する必要がありますが、case
ステートメントよりもPreparedStatement
パラメータを設定するにはどうすればよいですか。私のコードは次のようになります:CASE文を持つSQLでPreparedStatementを使用する方法
PreparedStatement updateAkaunAmanahPs = con.prepareStatement(""
+ "UPDATE GL_AKAUN_AMANAH "
+ " SET AMAUN_YOBCR = (CASE WHEN AMAUN_YOBCR IS NOT NULL THEN AMAUN_YOBCR = AMAUN_YOBCR + ? ELSE ? END) "
+ " WHERE PKID = ?");
updateAkaunAmanahPs.setBigDecimal(1, ytddr.subtract(ytdcr));
// if the case statement is true, how about this parameter ?
updateAkaunAmanahPs.setBigDecimal(2, ytddr.subtract(ytdcr));
updateAkaunAmanahPs.setLong(3, 30);
アイデアはありますか?