在JDBC警告的帮助下修正数据库

当数据库运行不正常却又没有报错和警告时,该查查Java数据库连接(JDBC)警告信息。这些警告能帮助我们找到未知的错误,修正费解的缺陷和调整数据库。 有三种提供JDBC警告的类:java.sql.Statement,java.sql.Connection,java.sql.ResultSet。这三种类都有getWarnings()方法返回SQLWaring对象。 该对象是SQLException的扩展,它以与SQLException封装错误信息集相同的方式封装了警告信息集。 很容易打印出SQLWaring信息: package com.generationjava.sql; import java.sql.SQLWarning; public final class JdbcW { static public void printWarnings(SQLWarning warning) { if(warning == null) { return; } System.err.println( formatWarnings(warning) ); } static public String formatWarnings(SQLWarning warning) { StringBuffer buffer = new StringBuffer(); while(warning != null) { buffer.append("SQLWarning: "); buffer.append( warning.getMessage() ); buffer.append("\nSQL State: "); buffer.append( warning.getSQLState( )); buffer.append("\nErrorCode: "); buffer.append( warning.getErrorCode( )); buffer.append("\n"); warning = warning.getNextWarning(); } return buffer.toString(); } } 下面是如何使用这个类: Connection connection = ....; JdbcW.printWarnings(connection.getWarnings()); Statement stmt = connection.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM Users"); JdbcW.printWarnings(stmt.getWarnings()); JdbcW.printWarnings(rs.getWarnings()); 最后,使用Apache Jakarta[http://jakarta.apache.org/log4j/docs/index.html]项目的Log4J包,能把数据库警告信息传递给数据库管理员。 <淘宝热门商品:
 

2.19 元  

瑞锦记锦缎喜糖袋 婚礼特制●上等材质●流行韩\日〓厂家批售

瑞锦记●织锦缎喜糖袋喜袋喜糖盒巧克力包装婚礼首饰袋喜糖包装

 

¥:28.00 

冲三皇冠疯抢啦 亲亲baby快乐驿站,宝宝用品童鞋童帽童装

*皇冠特色*纯手工,可爱特别的老虎护耳帽宝宝帽子童帽,46-48cm


来源:程序员网

小小豆叮

0 Responses to "在JDBC警告的帮助下修正数据库"

发表评论