繁体   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