小弟初学jdbc,想把ResultSet中查询的每条记录存入一个字符串数组中,代码如下
String ss[]={};
int i=0
while(rs.next()) {
ss[i]=String.valueOf(rs.getObject(1));
i++;
}
这段总是提示数组越界异常呢?想请教一下各位,多谢了!
String ss[]={};
int i=0
while(rs.next()) {
ss[i]=String.valueOf(rs.getObject(1));
i++;
}
这段总是提示数组越界异常呢?想请教一下各位,多谢了!
解决方案 »
- read. 输入输出值
- 请教Java的关于用类作为参数传递
- 国殇而觉醒:拟好好生活学习,希望大家多多帮助。
- can anyone give me an example for the answer of this question?
- 为什么现在做swing的那么少?
- Object的Clone规则,不是靠java的继承层次中protected成员访问规则维持的?
- 在applet中如何弹出对话框
- 看看我的"Hello World!"java程序,是哪里出错了?
- 如何把一个浮点数分整数和小数显示?
- 为什么我点了一个程序的run as后面的Java application程序没有运行出或任何结果,而且这个程序仅仅是最简单的hello world,
- 将表格里的所有数据增加到数据库。。。。。。
- java程序报错问题
ResultSet rs.getObject(1)的那列数据存的是varchar2(20)类型的数据
String ss[]={};
则ss.length() ==0不确定长度,可以用集合类,例如List,然后调用List的toArray() or toArray(T[]) 方法转为数组。
ps.executeQuery();
这里面的行数取出来啊?
如果为了方便,用楼上的方法可行。
如果不想用楼上的,用游标也可以,用游标得到行数,指定长度初始化String数组,就可以了。具体操作API:
ResultSet的last()和getRow(),自己研究研究吧。
resultSet=statement.executeQuery(sql);
resultSet.last();
totalRows=resultSet.getRow();totalRows 就是总行数,ss=new String[totalRows]
就行。