본문 바로가기

콩's EDUCATION/콩's JAVA_RUN

Select sql

키보드 입력을 통해 select 실행하기


 

import java.sql.*;
import java.util.*;


public class SelectSQLTest {
 public static void main(String[] args) {
  Connection con = null;
  try{
  Class.forName("oracle.jdbc.driver.OracleDriver");
  // 사용할 드라이버 로드한다.
  con = DriverManager.getConnection
    ("jdbc:oracle:thin:@127.0.0.1:1521:xe","scott","tiger");
  System.out.println("정상적으로 연결 되었습니다. ");
  
  /**
   * Scott 계정의 emp 테이블의
   * EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO 컬럼 INSERT
   *
   * 키보드로 이름 : 김, 급여 : 10, 부서번호 : 30
   *
   * 키보드로 '김' 입력하면 ename이 김씨인 사람의 급여 10% 인상하고
   * 부서번호 30번으로 변경한다.
   *
   * Update emp
   * SET salary = salary * 1.1,
      * deptno = 30
   * WHERE ename like '김%';
   *
   */
  Scanner input = new Scanner(System.in);
  System.out.println("인상률을 입력하세요 : ");
  double sal = input.nextDouble();
  System.out.println("부서 번호를 입력하세요 : ");
  int num = input.nextInt();
  System.out.println("성을 입력하세요 : ");
  String name = input.next();

  String updateSql = "Update emp"
    +" SET sal = sal *"+sal+","
    +" empno ="+num
    +" WHERE ename like "+"'"+name+"%'";  
  
  // SQL 전송 결과 검색
  Statement st = con.createStatement();
  int updateRow = st.executeUpdate(updateSql);
  System.out.println(updateRow+ "의 행을 수정했습니다. ");  
  
  con.close();
  System.out.println("정상적으로 연결해제 되었습니다.");
  }catch(ClassNotFoundException e){
   System.out.println ("jdbc 드라이버 미등록이거나 이름 오류입니다.");
  }catch(SQLException e){
   e.printStackTrace();
   System.out.println("연결정보 오류");
  }finally{
   try{
   if(!con.isClosed()) con.close();
   }catch(SQLException e){
    System.out.println("finally 오류");
   }
  }
 }
}

 


SelectSQLTest.java