JDBC如何输出数据库中某一行想要的数据

clipboard.png

clipboard.png
png](/img/bVFwcv)
比如输出ID为4的那一行
Scanner a = new Scanner(System.in);

        o=a.nextInt();
        if(o==1)
        {
            System.out.println("请输入需要查找的姓名");
            
            name =a.next();
            cx.cx1(name);
        }
        else if(o==2)
        {
            System.out.println("请输入需要查找的年龄");
            
            age = a.next();
            cx.cx2(age);
        }

......
下面为接收参数
public static void cx2(String age)throws Exception{

     Connection con = null;//定义引用
       PreparedStatement stmt = null;
       
       try {
           String driverClassName = "com.mysql.jdbc.Driver";
           String url = "jdbc:mysql://localhost:3306/txl";
           String username = "root";
           String password = "123";
            Class.forName(driverClassName);//加载数据库
            con =  DriverManager.getConnection(url, username, password);//实例化,得到参数  
            stmt=con.prepareStatement("select *from txl1 where age = ? ");
            stmt.setString(3, age);
            ResultSet result = stmt.executeQuery();
            
            while(result.next()){
                System.out.println(result.getString(1)+result.getString(2)+result.getString(3)
                        +result.getString(4)+result.getString(5)+result.getString(6));
            }
} catch (ClassNotFoundException e) {
    throw new RuntimeException(e);
}   
}

但是一直出现错误,求大神解答

阅读 4.6k
1 个回答
stmt.setString(3, age);
3是怎么数出来的?改成0试试。。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进