2017-07-14 55 views
0

我使用Spring jdbcTemplate類中的org.springframework.jdbc.core.JdbcTemplate.batchUpdate(String,Collection,int,ParameterizedPreparedStatementSetter)方法執行批量更新。java.sql.Statement.EXECUTE_FAILED Spring中的場景JdbcTemplate

要注意批處理操作的結果,此方法返回一個數組數組,其中包含批處理中每個SQL的以下3個狀態碼。

java.sql.Statement.EXECUTE_FAILED 
java.sql.Statement.SUCCESS_NO_INFO 
An Integer value greater than 0 stating no. of records affected. 

我試圖瞭解EXECUTE_FAILED返回時的場景。所以,我故意嘗試插入表中已經存在的記錄,以便操作在具有主鍵違規錯誤的DB上失敗。它失敗了,但我收到異常的形式失敗:

java.sql.SQLIntegrityConstraintViolationException. 

我期待在這種情況下返回錯誤代碼。

這裏有人知道,當錯誤代碼java.sql.Statement.EXECUTE_FAILED被jdbctemplate返回時,確切的情況是什麼?

回答