문제 ) sungjuk테이블 전체목록을 sno 칼럼순으로 정렬해서 출력하시오
전에 했던 jdbc0621 Test07_SelectAll.java 참고
String url ="jdbc:oracle:thin:@localhost:1521:xe"; //본인 ip, port listener 1521, xe 무료배포용
String user ="java0514";
String password="1234";
String driver ="oracle.jdbc.driver.OracleDriver"; //ojdbc6.jar
Connection con=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try{
Class.forName(driver);
con= DriverManager.getConnection(url, user, password); //get이기때문, 리턴형이 있다.
System.out.println("오라클 DB 서버 연결 성공!");
StringBuilder sql=new StringBuilder();
sql.append(" SELECT sno,uname,kor,eng,mat,aver,addr,wdate ");
sql.append(" FROM sungjuk ");
sql.append(" ORDER BY sno ");
pstmt=con.prepareStatement(sql.toString());
rs=pstmt.executeQuery(); //select문 ,리턴형, sql값이 담긴다.
if(rs.next()){ //cursor가 있나?
System.out.println("자료있음!");
do{
System.out.print(rs.getInt("sno")+" ");
System.out.print(rs.getString("uname")+" ");
System.out.print(rs.getInt("kor")+" ");
System.out.print(rs.getInt("eng")+" ");
System.out.print(rs.getInt("mat")+" ");
System.out.print(rs.getInt("aver")+" ");
System.out.print(rs.getString("addr")+" ");
System.out.print(rs.getString("wdate")+" ");
System.out.println();
}while(rs.next());
}else{
System.out.println("자료없음!");
}//if end
}catch(Exception e){
System.out.println("실패!"+e);
}finally{
//자원반납(순서주의~!)
try{
if(rs!=null){rs.close();}
}catch(Exception e){}
try{
if(pstmt!=null){pstmt.close();}
}catch(Exception e){}
try{
if(con!=null){con.close();}
}catch(Exception e){}
}//try end
출력결과
분석 ->
date의 자료형을 string형으로 하면 date와 입력한 시간의 정보까지 다 출력이 된다.
date형으로 하면 date의 정보만 출력이 된다.
문제 ) sungjuk테이블 전체 행갯수를 출력하시오
String url ="jdbc:oracle:thin:@localhost:1521:xe"; //본인 ip, port listener 1521, xe 무료배포용
String user ="java0514";
String password="1234";
String driver ="oracle.jdbc.driver.OracleDriver"; //ojdbc6.jar
Connection con=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try{
Class.forName(driver);
con= DriverManager.getConnection(url, user, password); //get이기때문, 리턴형이 있다.
System.out.println("오라클 DB 서버 연결 성공!");
StringBuilder sql=new StringBuilder();
sql.append(" SELECT count(*) as cnt ");
sql.append(" FROM sungjuk ");
pstmt=con.prepareStatement(sql.toString());
rs=pstmt.executeQuery(); //select문 ,리턴형, sql값이 담긴다.
if(rs.next()){ //cursor가 있나?
System.out.println("자료있음!");
do{
System.out.println("전체 행갯수:"+rs.getInt("cnt"));
System.out.println("전체 행갯수:"+rs.getInt(1));
System.out.println();
}while(rs.next());
}else{
System.out.println("자료없음!");
}//if end
}catch(Exception e){
System.out.println("실패!"+e);
}finally{
//자원반납(순서주의~!)
try{
if(rs!=null){rs.close();}
}catch(Exception e){}
try{
if(pstmt!=null){pstmt.close();}
}catch(Exception e){}
try{
if(con!=null){con.close();}
}catch(Exception e){}
}//try end
출력결과
문제) 주소가 서울인 행들의 국영수 평균값을 출력하시오
String url ="jdbc:oracle:thin:@localhost:1521:xe"; //본인 ip, port listener 1521, xe 무료배포용
String user ="java0514";
String password="1234";
String driver ="oracle.jdbc.driver.OracleDriver"; //ojdbc6.jar
Connection con=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try{
Class.forName(driver);
con= DriverManager.getConnection(url, user, password); //get이기때문, 리턴형이 있다.
System.out.println("오라클 DB 서버 연결 성공!");
String keyword="Seoul";
StringBuilder sql=new StringBuilder();
sql.append(" SELECT avg(kor) as avg_kor, avg(eng) as avg_eng, avg(mat) as avg_mat ");
sql.append(" FROM sungjuk ");
sql.append(" WHERE addr=? ");
pstmt=con.prepareStatement(sql.toString());
pstmt.setString(1, keyword);
rs=pstmt.executeQuery(); //select문 ,리턴형, sql값이 담긴다.
if(rs.next()){ //cursor가 있나?
System.out.println("자료있음!");
do{
System.out.println("avg_kor : "+rs.getInt("avg_kor")+"");
System.out.println("avg_eng : "+rs.getInt("avg_eng")+"");
System.out.println("avg_mat : "+rs.getInt("avg_mat")+"");
System.out.println();
}while(rs.next());
}else{
System.out.println("자료없음!");
}//if end
}catch(Exception e){
System.out.println("실패!"+e);
}finally{
//자원반납(순서주의~!)
try{
if(rs!=null){rs.close();}
}catch(Exception e){}
try{
if(pstmt!=null){pstmt.close();}
}catch(Exception e){}
try{
if(con!=null){con.close();}
}catch(Exception e){}
}//try end
출력결과
'공부 > 응용 SW' 카테고리의 다른 글
6월26일 - MySQL1 설치하기 (0) | 2019.06.26 |
---|---|
6월26일 - 오라클 SQL2 문제 (0) | 2019.06.26 |
6월24일 - SW활용 (0) | 2019.06.24 |
6월21일 - SW활용 JDBC : java에 DB연결하기 (0) | 2019.06.21 |
6월20일 - SW활용 Oracle (0) | 2019.06.20 |