当前位置:  技术问答>java相关

关于RecordSet的问题,急急急急急急急!

    来源: 互联网  发布时间:2015-08-05

    本文导语:  1. 怎么判断一个RecordSet有多少行、多少列? 2. 为什么我用RecordSet.getObject()或者RecordSet.getString()取数时,只能按顺序取?例如先取第14列再取第6列就提示: Exception in thread "main" java.sql.SQLException: [Microsoft][ODBC SQL Se...

1. 怎么判断一个RecordSet有多少行、多少列?
2. 为什么我用RecordSet.getObject()或者RecordSet.getString()取数时,只能按顺序取?例如先取第14列再取第6列就提示:
Exception in thread "main" java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引

|
1、recordset对象只能说有多少个,而不能说有多少行多少列吧?一条记录就是一个recordset中的一个对象。取得recordset的方法:
Recordet rs;
rs.last();
int Num=rs.getRow();
Num即是recordset的个数了
2、第二个问题,以前我也在论坛上面看见过类似的取mssql中的数据颠倒顺序时出错的帖子。不知道最后如何解决了,你可以搜索一下,个人觉得好像跟你的odbc驱动有关。

|
问题一:
...
Statement st= conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs= st.executeQuery(sql);
ResultSetMetaData getdata = rs.getMetaData();
int Colcount = getdata.getColumnCount();//得到一个记录的列数;
nt numRows = 0;
boolean rs_isEmpty = !rs.next();
if (!rs_isEmpty){
 rs.last();
 numRows = rs.getRow();//得到记录集的总记录数(总行数);
 rs.first();
}     
问题二:
像上面那样定义Statement,应该可以随意取记录,只要控制好游标的位置

|
1. 必须是jdbc2.0才可以随意取列,而且不能使用jdbc-odbc桥

2。你可以执行一次sql: select count(*) from table where 条件取道你需要的记录数目。

|
http://www.csdn.net/expert/topic/906/906584.xml?temp=.5109522

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • jsp Recordset 对象有 PageSize 成员吗
  • [RecordSet] 可不可以复用?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3