簡體   English   中英

通過 java 代碼將 continueOnError 屬性設置為 true

[英]set continueOnError property to true through java code

我正在嘗試使用連接器mysql-connector-java-5.1.6-bin.jar更新 MySql DB 中的一批記錄。 根據此答案,驅動程序可能會在一條記錄失敗的情況下繼續運行,或者可能會引發異常。

如果一條語句失敗,JDBC 驅動程序可以選擇嘗試執行批處理中的所有語句,或者一旦語句失敗,它可以選擇停止執行批處理中的語句。

根據連接器 jar 的文檔,它說continueOnError默認為 true。

continueBatchOnError

如果一個語句失敗,驅動程序是否應該繼續處理批處理命令。 JDBC 規范允許任何一種方式(默認為“true”)。

默認值:真

自版本:3.0.3

我想根據某些業務邏輯更改此屬性值。 那么如何在我的實現中(在我的 java 代碼中)將此屬性設置為 true 或 false 。

注意:我無法更改連接參數。 我只是獲取一個connection對象並執行批量更新。

如果連接是com.mysql.jdbc.JDBC4Connection你可以設置continueBatchOnError標志:

JDBC4Connection mysqlCon = (JDBC4Connection)con;
boolean current = mysqlCon.getContinueBatchOnError();
mysqlCon.setContinueBatchOnError(false);

否則(例如,如果連接由連接池實現包裝),您可以使用Connection.unwrap來獲取JDBC4Connection

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM