当前位置: 技术问答>java相关
關於jdbc的 兩個問題
来源: 互联网 发布时间:2015-11-12
本文导语: 1: 我为Connection 先建立一个Statment stmt ,用rs 接收stmt 运行一个简单查询得到记录,然后又建立一个CallableStatement ctmt ,用crs接收 ctmt运行的一个存储过程。 奇怪的是我得到的效果是:rs 没有记录,而crs有记...
1: 我为Connection 先建立一个Statment stmt ,用rs 接收stmt 运行一个简单查询得到记录,然后又建立一个CallableStatement ctmt ,用crs接收 ctmt运行的一个存储过程。
奇怪的是我得到的效果是:rs 没有记录,而crs有记录
但当我将CallableStatement和crs注释掉时则rs有记录了
如果想rs和crs都有记录,我分别为它们建立了Connection 才可以
为什么会这样啊?怎样用一个Connection解决。
2: 我的ResultSet rs 是执行"select * from aTable" 的返回记录
也就是说aTable 是不固定的
那么我怎么才能知道rs有多少列每列的名称,类型呢?
奇怪的是我得到的效果是:rs 没有记录,而crs有记录
但当我将CallableStatement和crs注释掉时则rs有记录了
如果想rs和crs都有记录,我分别为它们建立了Connection 才可以
为什么会这样啊?怎样用一个Connection解决。
2: 我的ResultSet rs 是执行"select * from aTable" 的返回记录
也就是说aTable 是不固定的
那么我怎么才能知道rs有多少列每列的名称,类型呢?
|
第二个问题:使用Connection的getMetaData()及相关的方法,具体的你需要查帮助。我曾经实现过判定数据库中是否存在某个表,获取某个表的列名,都没有问题。
第一个问题:
在使用CallableStatement之前是否关闭了Statement?可能和没有关闭有关系。还有,就是你使用的jdbc驱动有关,你可以换一个驱动试一试
第一个问题:
在使用CallableStatement之前是否关闭了Statement?可能和没有关闭有关系。还有,就是你使用的jdbc驱动有关,你可以换一个驱动试一试
|
gz
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。