首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

ResultSet的一个有关问题

2012-03-02 
ResultSet的一个问题如果我在查询数据的过程中,出现异常,ResultSet 会不会被创建,ResultSet 我要不要关闭

ResultSet的一个问题
如果我在查询数据的过程中,出现异常,ResultSet 会不会被创建,ResultSet 我要不要关闭啊?

[解决办法]
ResultSet executeQuery() throws SQLException;
exception:SQLException if a database access error occurs or the SQL
statement does not return a ResultSet object
最好如下:

Java code
[color=#FF0000][b]finally {    rs.close();    rs = null;}[/b][/color]
[解决办法]
关不了~因为那是null,所以不用!
这么写!
if(result!=null)
 result.close();
[解决办法]
直接关掉connection就可以了

如果程序要求比较严谨的话
可以在关之前进行一下null判断
如楼上所说
[解决办法]
理论上是不用的,不过养成习惯总是好的。
Java code
        finally {             try {                if (rst != null) {                    rst.close();                }            } catch (SQLException e) {                e.printStackTrace();            }}
[解决办法]
探讨
理论上是不用的,不过养成习惯总是好的。

Java code
finally {
try {
if (rst != null) {
rst.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}

[解决办法]
那就在捕获异常时,判断是否关闭,再根据结果来决定如何操作。
[解决办法]
查询异常后 ResultSet 为 null;
个人认为 :每个都要关. 
而且没有必要判断null 
因为 出现了异常说明这个代码是错的. 
必须要改修改的.
如果是由于. 网络中断,数据库被破坏 等 不可预测的错误导至 的异常 判断为null 也余事无补

纯属个人观点!!!

[解决办法]
引用楼主 yuchui 的帖子:
如果我在查询数据的过程中,出现异常,ResultSet 会不会被创建,ResultSet 我要不要关闭啊?

[解决办法]
探讨
理论上是不用的,不过养成习惯总是好的。

Java code
finally {
try {
if (rst != null) {
rst.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}

[解决办法]
探讨
理论上是不用的,不过养成习惯总是好的。

Java code
finally {
try {
if (rst != null) {
rst.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}

[解决办法]
Java code
ResultSet rs = statement.executeQuery("select * from zhao");        if(rs!=null) {//這裡要判斷的!            rs.close();        } 

热点排行