为什么打不 出值(100分)

  • 主题发起人 主题发起人 阿军
  • 开始时间 开始时间

阿军

Unregistered / Unconfirmed
GUEST, unregistred user!
import java.io.*;
import java.net.*;
import java.sql.*;
//import java.util.Vector;
public class sqlconn {
public static void main(String args[])
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//连接数据库
Connection c=DriverManager.getConnection("jdbc:odbc:javaicq","sa","system");
Statement stmt = c.createStatement();
ResultSet rs = stmt.executeQuery("select * from test1");
System.out.print(rs.getString(1));
}
catch(Exception e){e.getMessage();}
}

}
 
你又没有取值,用
while(rs.next){
String ss=new String();
ss=rs.getString("字段名");
System.out.println(ss);
}
 
这句不是取值吗。System.out.print(rs.getString(1));
 
但是rs只是激活了查询语句,但是他的本身是没有值的,
只有用另外的字段来获取他的字段值才行。
 
那我这样可以吗 。
String ss=new String();
ss=rs.getString("id");
System.out.println(ss);
 
刚才错了,应该在next后面加上括号为:
while(rs.next()){
String ss=new String();
ss=rs.getString("字段名");
System.out.println(ss);
}
我试过了,可以打印。
你的方法你试一下,也许行,不过,成功的可能性不大。
因为你这样做和直接取用rs没有什么区别
 
我知道原因了:
ResultSet在使用之前必须调用next()方法一次。让它指向第一行。
 
谢谢你xiaotianwangzi,奖励你100分。
 
接受答案了.
 
好啊,我也谢谢你的分。
 

Similar threads

I
回复
6
查看
251
I
W
回复
3
查看
243
qdyoung
Q
后退
顶部