我猜是这样的,执行statement后返回一个结果集保存在内存中,通过一个结果集的变量名rs指向statement的结果集,或者应该说是访问statement的结果集,但是你关闭了statement后,返回的结果集就没有了,也就是说rs所指的地方已经没有东东,rs变成了null,没有指向任何的结果集。
以上是我的理解,有不对的地方还请高人指点。
以上是我的理解,有不对的地方还请高人指点。
解决方案 »
- Can't send long data for non-string/non-binary data types
- wwwwb大虾请进
- mysql bat 游标
- 关于sql语句like的问题麻烦大家帮忙!
- 求助:数据库连接成功,在执行update时出现错误:com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'id' at row 1
- binlog日志
- primary key不是只能有一个么?
- 一个奇怪的问题!
- 有谁知道GiST的具体机制?有哪位前辈有过研究,请不吝赐教
- 安装mysql不成功
- 我把MySQL数据库中一个latin1_general_ci字段修改成了GB2312_chinese_ci结果出现乱码,怎么处理。
- 为什么CPU被Mysql大量占用?有什么优化吗?
有一个共公类,它执行statement,然后关闭这个statemetn,返回rs
之前的程序是没错的,
但不知为什么,换了一个更新的驱动后,不能在共公类中关闭statement,否则出错,
换回旧的驱动后还是出错(会不会与系统缓存有关?),郁闷啊!
(应该是rs被关闭了)
问题是在公共类中关闭statement,返回的rs无效;
如果在公共类中不关闭statement,则返回的rs有效,但这样会造成statement未关闭,消费系统资源.
When a Statement object is closed, its current ResultSet object, if one exists, is also closed.
详情参见sun官方文档