是否你的sql中没有查询id这一列呢,贴SQL代码出来

解决方案 »

  1.   

    代码如下:
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;public class JDBC20ReadDemo{
    //定义MySQL数据库的驱动程序
    public static final String DBDRIVER = "org.gjt.mm.mysql.Driver";
    //定义MySQL数据库的连接地址
    public static final String DBURL = "jdbc:mysql://1localhost:3306/test";
    //MySQL数据库的连接用户名
    public static final String DBUSER = "root";
    //MySQL数据库的连接密码
    public static final String DBPASS = "admin";
        
    public static void main (String[] args) throws Exception {
    Connection conn = null; //数据库连接
    PreparedStatement pstmt = null; //数据库操作
    ResultSet rs = null; //保存查询结果
    String sql = "SELECT id,name,password,age,sex,birthday"
    +"FROM user"; // 此处不需要设置任何内容
    Class.forName(DBDRIVER); //加载驱动程序
    //连接MySQL数据库时,要写上连接的用户名和密码
    conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS);
    pstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE,
      ResultSet.CONCUR_READ_ONLY); //实例化对象
    rs = pstmt.executeQuery(); //实例化ResultSet对象
    System.out.println("第2条数据");
    rs.absolute(1);
    print(rs,1);
    System.out.println("第1条数据");
    rs.beforeFirst();
    print(rs,1);
    System.out.println("第3条数据");
    rs.afterLast();
    print(rs,-1);
    rs.close();
    pstmt.close();
    conn.close();
    } public static void print(ResultSet rs,int re) throws Exception {
    if (re>0)
    {
    rs.next();
    }else{
    rs.previous();
    }
    int id = rs.getInt(1);
    String name = rs.getString(2);
    String pass = rs.getString(3);
    int age = rs.getInt(4);
    String sex = rs.getString(5);
    java.util.Date date = rs.getDate(6);
    System.out.println("编号:"+id+"; ");
    System.out.println("姓名:"+name+"; ");
    System.out.println("密码:"+pass+"; ");
    System.out.println("年龄:"+age+"; ");
    System.out.println("性别:"+sex+"; ");
    System.out.println("生日:"+date+"; ");
    System.out.println("================================================");
    }

    }
      

  2.   

    楼主你sql语句有问题吧,String sql = "SELECT id,name,password,age,sex,birthday"
                            +" FROM user";  
    birthday和FROM之间少了一个空格
      

  3.   

    还以为csdn支持 空格解析,没想到直接原样输出了,楼主再这里加个空格
      

  4.   

    sql 语句问题。连在一起了和from