2017-08-23 43 views
0

要檢查單個查詢我用這個如何在Java Swing中檢查批量執行SQL查詢是否成功?

int a = statement.executeupdate(); 
if(a>0){ 
JoptionPane. showmessagediaglog(null, "Success"); 
else{ 
JoptionPane. showmessagediaglog(null, "Failed"); 

我如何做到這一點與執行批處理一樣int a = statement.executebatch();

這並不當然的工作,所以有沒有辦法?

+1

檢查'executeBatch()'返回的_array_;注意拼寫。 – trashgod

+0

可以請你提供一個代碼片段bcuz我試過了,失敗了。 @trashgod – CodeMan

回答

1

則ExecuteBatch()返回一個整數 數組,所以你要做的:

int a[]= executeBatch(); 

而且根據的Java API:「如果全部命令執行成功,則返回更新計數組成的數組的int元素返回的數組的順序與批處理中的命令相對應,這些命令按照它們添加到批處理的順序排序。「

因此,如果數組的長度等於您在批次上發送的更新的長度,則可以假定它是成功的。或使其更簡單,並根據您的例子:

int a[] = statement.executeBatch(); 
    if(a.length>0){ 
     JoptionPane. showmessagediaglog(null, "Success"); 
    else{ 
     JoptionPane. showmessagediaglog(null, "Failed"); 
    } 

您還可以重複上一個[]值,總結影響的行的總數,並通知在JOption對話框中的用戶。