处理查询结果集

/*
	处理查询结果集
*/
public class JDBCTest05{
	public static void main(String [] args){
		Connection conn =null;
		Statement stmt=null;
		ResultSet rs=null;
		try{
			//1.注册驱动
			Class.forName("com.mysql.jdbc.Driver");
			//2.获取连接
			conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/bjpowernode","root","123456");
			//3.获取数据库操作对象
			stmt=conn.createStetement();
			//4.执行sql语句
			String sql="select empno a,ename,sal from emp";
			rs=stmt.executeQuery(sql);	//专门执行DQL语句的方法
			//5.处理查询结果集
			/*
			boolean flag1=rs.next();
			if(flag1){
				//光标指向的行有数据
				//取数据
				//getString()方法的特点是:不管数据库中的数据类型是什么,都以String类型取出
				String empno=rs.getString(1);	//JDBC中所有下标从1开始,不是从0开始
				String ename=rs.getString(2);
				String sal=rs.getString(3);
				System.out.println(empno+","+ename+","+sal);
			}
			*/
			while(rs.next()){
			/*
				String empno=rs.getString(1);	
				String ename=rs.getString(2);
				String sal=rs.getString(3);
				System.out.println(empno+","+ename+","+sal);
			*/
				//以查询语句的列的名字获取
				String empno=rs.getString("a");	//列名称不是表中的列名称,是查询结果集的列名称
				String ename=rs.getString("ename");
				String sal=rs.getString("sal");
				System.out.println(empno+","+ename+","+sal);
			}
		}
		catch(Exception e){
			e.printStackTrace();
		}finally{
			//6.释放资源
			if(rs!=null){
				try{
					rs.close();
				}catch(Exception e){
					e.printStackTrace();
				}
			}
			if(stmt!=null){
				try{
					stmt.close();
				}catch(Exception e){
					e.printStackTrace();
				}
			}
			if(conn!=null){
				try{
					conn.close();
				}catch(Exception e){
					e.printStackTrace();
				}
			}
		}
	}
}

  

posted @ 2021-10-25 10:28  石乐智先生  阅读(62)  评论(0编辑  收藏  举报