java如何显示从oracle中读取的全部结果集?
java如何显示从oracle中读取的全部结果集?如题,并不是在程序中预先设置好字段然后读取字段,而是把结果集全部显示出来,就相当于做了一个类似sqlplus的界面,我把...
java如何显示从oracle中读取的全部结果集?
如题,并不是在程序中预先设置好字段然后读取字段,而是把结果集全部显示出来,就相当于做了一个类似sqlplus的界面,我把代码写成这样,程序虽不出错,但是只会给我返回true,false之类的值,看不到表啊,大家能帮忙给看看吗?
jbutton2.addActionListener(new java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent e){
try{
//判断连接是否存在或者连接是否关闭
if(conn!=null&&!conn.isClosed()){
//创建Statement对象
Statement stmt=conn.createStatement();
//获取sql语句 eg:select * from test
String sql=null;
sql=jtextfield3.getText();
System.out.println("执行SQL语句:"+sql);
//文本域中累加
jtextarea.setText(jtextarea.getText()+"执行SQL语句:"+sql+"\n");
//返回数据库中符合条件记录
ResultSet rs=stmt.executeQuery(sql);
//显示数据库中符合条件记录
System.out.println("控制台测试用的System.out.println(rs);"+rs);
while(rs.next()){
System.out.println(rs.next());
jtextarea.setText(jtextarea.getText()+rs.next()+"\n");
}
rs.close();
stmt.close();
}
else{
jtextarea.setText(jtextarea.getText()+"数据库已关闭或连接不存在!\n");
}
}
catch(SQLException se){
jtextarea.setText(jtextarea.getText()+"SQL执行失败!\n");
se.printStackTrace();
}
}
});
}
谢谢楼上,但是你写的这个只能适合三列的表,如果有的表有三列,有的表有三十列怎么办呢?我不想写死,所以getstring()方法里没有放字段名,放的数字索引值,这样更方便.但是如何写成可以自动读到最后一列呢?
最新改的是这样,但是只读出第一列就报错了:
while(rs.next()){
while(rs.getBoolean(i)){
String id=rs.getString(i);
jtextarea.setText(jtextarea.getText()+id+"\n");
i++;} 展开
如题,并不是在程序中预先设置好字段然后读取字段,而是把结果集全部显示出来,就相当于做了一个类似sqlplus的界面,我把代码写成这样,程序虽不出错,但是只会给我返回true,false之类的值,看不到表啊,大家能帮忙给看看吗?
jbutton2.addActionListener(new java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent e){
try{
//判断连接是否存在或者连接是否关闭
if(conn!=null&&!conn.isClosed()){
//创建Statement对象
Statement stmt=conn.createStatement();
//获取sql语句 eg:select * from test
String sql=null;
sql=jtextfield3.getText();
System.out.println("执行SQL语句:"+sql);
//文本域中累加
jtextarea.setText(jtextarea.getText()+"执行SQL语句:"+sql+"\n");
//返回数据库中符合条件记录
ResultSet rs=stmt.executeQuery(sql);
//显示数据库中符合条件记录
System.out.println("控制台测试用的System.out.println(rs);"+rs);
while(rs.next()){
System.out.println(rs.next());
jtextarea.setText(jtextarea.getText()+rs.next()+"\n");
}
rs.close();
stmt.close();
}
else{
jtextarea.setText(jtextarea.getText()+"数据库已关闭或连接不存在!\n");
}
}
catch(SQLException se){
jtextarea.setText(jtextarea.getText()+"SQL执行失败!\n");
se.printStackTrace();
}
}
});
}
谢谢楼上,但是你写的这个只能适合三列的表,如果有的表有三列,有的表有三十列怎么办呢?我不想写死,所以getstring()方法里没有放字段名,放的数字索引值,这样更方便.但是如何写成可以自动读到最后一列呢?
最新改的是这样,但是只读出第一列就报错了:
while(rs.next()){
while(rs.getBoolean(i)){
String id=rs.getString(i);
jtextarea.setText(jtextarea.getText()+id+"\n");
i++;} 展开
3个回答
展开全部
ResultSet rs=stmt.executeQuery(sql);
在这句后面加:
while(rs.next()){
String str1=rs.getString("要输出的数据库中的字段值");
String str2=rs.getString("要输出的数据库中的字段值");
String str3=rs.getString("要输出的数据库中的字段值");
……
}
具体要怎么显示,你根据的实际需要
在这句后面加:
while(rs.next()){
String str1=rs.getString("要输出的数据库中的字段值");
String str2=rs.getString("要输出的数据库中的字段值");
String str3=rs.getString("要输出的数据库中的字段值");
……
}
具体要怎么显示,你根据的实际需要
追问
谢谢楼上,但是你写的这个只能适合三列的表,如果有的表有三列,有的表有三十列怎么办呢?我不想写死,所以getstring()方法里没有放字段名,放的数字索引值,这样更方便.但是如何写成可以自动读到最后一列呢?
展开全部
ResultSet rs=stmt.executeQuery(sql);
在这句后面加:
while(rs.next()){
String str1=rs.getString("要输出的数据库中的字段值");
String str2=rs.getString("要输出的数据库中的字段值");
String str3=rs.getString("要输出的数据库中的字段值");
……
}
在这句后面加:
while(rs.next()){
String str1=rs.getString("要输出的数据库中的字段值");
String str2=rs.getString("要输出的数据库中的字段值");
String str3=rs.getString("要输出的数据库中的字段值");
……
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
手动创建一个domain类作为你要输出结果集的resultmap
追问
不明白啊,我就创建了一个主类,还是抄书上的,还不太会用类,其它实现这些功能的都是方法.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询