簡體   English   中英

如何獲取jdbc的輸出或錯誤流

[英]How do I get output or error stream for jdbc

我正在嘗試通過JDBC連接DB2。 我如何獲得sql將像IDE一樣返回的輸出消息。 例如,選擇查詢將返回已提取的100行。 插入將返回更新的行數。

此外,還會出現錯誤消息,例如未找到行,用戶沒有訪問數據庫的權限,由於重復的主鍵而無法執行插入等。

catch拋出的異常並打印堆棧跟蹤。

try{
    // your SQL work
} catch(Exception e){
    e.printStackTrace();
}

這將在您的輸出控制台中顯示錯誤。

使用JDBC API execute update來獲取更改后的行數。 以及獲取其他消息的異常。

https://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#executeUpdate(java.lang.String)

int executeUpdate(String sql)拋出SQLException

執行給定的SQL語句,該語句可以是INSERT,UPDATE或DELETE語句,也可以是不返回任何內容的SQL語句,例如SQL DDL語句。 注意:不能在PreparedStatement或CallableStatement上調用此方法。

參數:sql-SQL數據操作語言(DML)語句,例如INSERT,UPDATE或DELETE; 或不返回任何內容的SQL語句,例如DDL語句。

返回:SQL數據操作語言(DML)語句的行計數或(2)對於不返回任何內容的SQL語句為0

拋出:SQLException-如果發生數據庫訪問錯誤,則在封閉的Statement上調用此方法,給定的SQL語句生成ResultSet對象,在PreparedStatement或CallableStatement上調用該方法SQLTimeoutException-當驅動程序確定超時值等於已超過setQueryTimeout方法指定的值,並且至少已嘗試取消當前正在運行的Statement

暫無
暫無

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

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