请问如何用JDBC获取ResultSet结果集中的第二列数据。和总行数?

时间:2021-07-31 11:49:54
ResultSet rs=stmt.executeQuery(sqlAll);
while(rs.next()){
            String phone = rs.getString("phone");
            //System.out.println(phone);
            pw.println(phone);

        }

以上代码能获取表中第一列“phone”但我想获取第二列“phonetype”,用同样的方法。发现不行.
.该用什么方法,光获取第二。和获的所有列的数据啊?

还有我想得到rs的总行数,用哪个方法啊?getRow()好象不行嘛

12 个解决方案

#1


ResultSet rs=stmt.executeQuery(sqlAll);
while(rs.next()){
            String phone = rs.getString("phone");
            String phonetype= rs.getString("phonetype");//第2 列
            //System.out.println(phone);
            pw.println(phone);

        }
        int rowCount=rs.getRow();//总行数
ps:getRow()是获取当前指针位置的行数,也就是说只有指针指向最后一行时getRow()的返回值才是总行数

#2


String phone = rs.getString("phone");
建议改成String phone = rs.getString(1);
这样万一字段名称有变
就省得改程序了

#3


1:楼上rs.getString(1)什么意思?第一列?这样也行啊?

2:楼上的楼上,String phonetype= rs.getString("phonetype");//第2 列
这样好象不行啊,我用了,没获到。

3:如何获取总行数?

#4


String phonetype= rs.getInt("phonetype");

#5


1.是的,ResultSet是从1开始的,意思就是取第一列
2.肯定行,可能数据类型不对,你再看看
3. 你可以写个select count(*) from 表名,查询一下不就行了

#6


获得总行数:
rs.last();
int num=rs.getRow();

#7


1:楼上rs.getString(1)什么意思?第一列?这样也行啊?
当然可以了,
rs.getString(2)也行呢,不知道了吧
-----------------------------------
2:楼上的楼上,String phonetype= rs.getString("phonetype");//第2 列
这样好象不行啊,我用了,没获到。
这样绝对可以,我肯定
-----------------------------------
3:如何获取总行数?
rs.last();
int num=rs.getRow();

#8


楼上的没错
rs.getString()
是比较常用的取值方法
获得
总行数
楼上的可以
用 jianls(欢欢鱼)的
select count(*) from 表名
也可以
楼主检查下自己的程序吧~

#9


回复人: layueer(爱伤怀,努力升仙) ( ) 信誉:98  2005-09-12 16:21:00  得分: 0  
 
 
   1:楼上rs.getString(1)什么意思?第一列?这样也行啊?
当然可以了,
rs.getString(2)也行呢,不知道了吧
-----------------------------------
2:楼上的楼上,String phonetype= rs.getString("phonetype");//第2 列
这样好象不行啊,我用了,没获到。
这样绝对可以,我肯定
-----------------------------------
3:如何获取总行数?
rs.last();
int num=rs.getRow();
  
 
----------------------------------------
---------------------------------------
绝对支持!
绝对支持!
绝对支持!

#10


1:rs.last();
 int num=rs.getRow();这个方式似乎不行,我用了一下结果为0

2:"你可以写个select count(*) from 表名,查询一下不就行了"这个是行,但结果是:
sql=select count(*) from 表名
rs=stmt.executeQuery(sql);

查询出的结果在rs里面,怎么弄出来?


#11


顺便问一下哦,我要生成文件,怎么在程序里生成文件夹?makedir()?

#12


2:"你可以写个select count(*) from 表名,查询一下不就行了"这个是行,但结果是:
sql=select count(*) from 表名
rs=stmt.executeQuery(sql);

有值以后 用
rs.next();
String show=rs.getString(1);
show就是你要得值

生成文件夹不会做 帮不了楼主拉 呵呵

#1


ResultSet rs=stmt.executeQuery(sqlAll);
while(rs.next()){
            String phone = rs.getString("phone");
            String phonetype= rs.getString("phonetype");//第2 列
            //System.out.println(phone);
            pw.println(phone);

        }
        int rowCount=rs.getRow();//总行数
ps:getRow()是获取当前指针位置的行数,也就是说只有指针指向最后一行时getRow()的返回值才是总行数

#2


String phone = rs.getString("phone");
建议改成String phone = rs.getString(1);
这样万一字段名称有变
就省得改程序了

#3


1:楼上rs.getString(1)什么意思?第一列?这样也行啊?

2:楼上的楼上,String phonetype= rs.getString("phonetype");//第2 列
这样好象不行啊,我用了,没获到。

3:如何获取总行数?

#4


String phonetype= rs.getInt("phonetype");

#5


1.是的,ResultSet是从1开始的,意思就是取第一列
2.肯定行,可能数据类型不对,你再看看
3. 你可以写个select count(*) from 表名,查询一下不就行了

#6


获得总行数:
rs.last();
int num=rs.getRow();

#7


1:楼上rs.getString(1)什么意思?第一列?这样也行啊?
当然可以了,
rs.getString(2)也行呢,不知道了吧
-----------------------------------
2:楼上的楼上,String phonetype= rs.getString("phonetype");//第2 列
这样好象不行啊,我用了,没获到。
这样绝对可以,我肯定
-----------------------------------
3:如何获取总行数?
rs.last();
int num=rs.getRow();

#8


楼上的没错
rs.getString()
是比较常用的取值方法
获得
总行数
楼上的可以
用 jianls(欢欢鱼)的
select count(*) from 表名
也可以
楼主检查下自己的程序吧~

#9


回复人: layueer(爱伤怀,努力升仙) ( ) 信誉:98  2005-09-12 16:21:00  得分: 0  
 
 
   1:楼上rs.getString(1)什么意思?第一列?这样也行啊?
当然可以了,
rs.getString(2)也行呢,不知道了吧
-----------------------------------
2:楼上的楼上,String phonetype= rs.getString("phonetype");//第2 列
这样好象不行啊,我用了,没获到。
这样绝对可以,我肯定
-----------------------------------
3:如何获取总行数?
rs.last();
int num=rs.getRow();
  
 
----------------------------------------
---------------------------------------
绝对支持!
绝对支持!
绝对支持!

#10


1:rs.last();
 int num=rs.getRow();这个方式似乎不行,我用了一下结果为0

2:"你可以写个select count(*) from 表名,查询一下不就行了"这个是行,但结果是:
sql=select count(*) from 表名
rs=stmt.executeQuery(sql);

查询出的结果在rs里面,怎么弄出来?


#11


顺便问一下哦,我要生成文件,怎么在程序里生成文件夹?makedir()?

#12


2:"你可以写个select count(*) from 表名,查询一下不就行了"这个是行,但结果是:
sql=select count(*) from 表名
rs=stmt.executeQuery(sql);

有值以后 用
rs.next();
String show=rs.getString(1);
show就是你要得值

生成文件夹不会做 帮不了楼主拉 呵呵