일반 statement 이용
import java.sql.*;
import java.util.Scanner;
public class Test {
private Connection CN = null;
private Statement ST = null;
private PreparedStatement PST = null;
private ResultSet RS = null;
private int data1; //사번
private String data2; //이름
private int data3; // 급여
Scanner sc = new Scanner(System.in);
public static void main(String args[]){
Test ob = new Test();
//ob.dbInsert(); //Statement명령어 저장처리
//ob.dbInsert2(); //PreparedStatement 저장처리
ob.dbDelete();
}//main end
public Test() { //생성자 ==> DB정보를 알아야 됨
try {
//순서 1
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@127.0.0.1:1521:XE"; //제어판->관리도구->서비스 OracleServiceXXXX
CN = DriverManager.getConnection(url,"user4","pass4");
System.out.println("DB연결성공!!!! DB정보 CN이 기억함");
}catch(Exception ex) { System.out.println(ex.toString()); } //에러정보 문자로 출력
}//생성자
public void dbInsert2() { //PreparedStatement 저장처리
System.out.println("PreparedStatement 명령어로 저장처리");
try {
//순서 2 쿼리문 작성
String msg = "insert into insa values(?, ?, sysdate, ? )";
//순서 3 명령어 생성 PreparedStatement - 기본쿼리문 미리서 해석후 기다림
CN.prepareStatement(msg); //알맹이가 없는 상태에서 컴파일하고 대기, 실행속도가 빠르다.
PST = CN.prepareStatement(msg);
//순서4 데이터 입력후 세팅
System.out.println("데이터를 입력하세요");
System.out.print("사번 : "); data1 = Integer.parseInt(sc.nextLine());
System.out.print("이름 : "); data2 = sc.nextLine();
System.out.print("급여 : "); data3 = Integer.parseInt(sc.nextLine());
PST.setInt(1, data1); // (물음표 x번째, 넣을데이터)
PST.setString(2, data2);
PST.setInt(3, data3);
//순서 5 물음표 대신에 세팅후 명령어 실행
/*
int OK = ST.executeUpdate(msg); //최종실행단계
if ( OK > 0 ) {
System.out.println("저장 성공!");
}*/
int OK = PST.executeUpdate(); //괄호 안의 msg변수가 없다.
if(OK > 0)
System.out.println("PreparedStatement로 저장성공!");
}catch(Exception ex){ System.out.println("저장 실패!"); ex.toString(); }
}
public void dbDelete(){
System.out.println("statement 명령어로 삭제하기");
try {
//순서 2 명령어 생성
ST = CN.createStatement();
//순서 3 쿼리문 작성
System.out.println("삭제할 사번 입력하세요");
System.out.print("사번 : ");
data1 = Integer.parseInt(sc.nextLine());
//delete from insa where sabun = 7774;
String msg = "delete from insa where sabun = "+data1;
System.out.println(msg);
//순서 4 명령어 실행
int OK = ST.executeUpdate(msg); //최종실행단계
if ( OK > 0 ) {
System.out.println("삭제 성공!");
}
}catch(Exception ex){ System.out.println("삭제 실패!"); ex.toString(); }
}
}//class END
//select * from insa;
prepareStatement 이용
System.out.println("PreparedStatement 명령어로 삭제처리");
try {
//순서 2 쿼리문 작성
String msg = "delete from insa where sabun = ?";
CN.prepareStatement(msg); //알맹이가 없는 상태에서 컴파일하고 대기, 실행속도가 빠르다.
PST = CN.prepareStatement(msg);
//순서4 데이터 입력후 세팅
System.out.println("삭제할 데이터를 입력하세요");
System.out.print("사번 : "); data1 = Integer.parseInt(sc.nextLine());
PST.setInt(1, data1); // (물음표 x번째, 넣을데이터)
//순서 5 물음표 대신에 세팅후 명령어 실행
/*
int OK = ST.executeUpdate(msg); //최종실행단계
if ( OK > 0 ) {
System.out.println("저장 성공!");
}*/
int OK = PST.executeUpdate(); //괄호 안의 msg변수가 없다.
if(OK > 0)
System.out.println("PreparedStatement로 삭제성공!");
}catch(Exception ex){ System.out.println("삭제 실패!"); ex.toString(); }
}//class END
'개인 공부방 > JAVA' 카테고리의 다른 글
자바 계산기 v1 (0) | 2012.10.15 |
---|---|
자바 -DB 연동 파일입출력 (0) | 2011.12.01 |
자바-오라클 연동 3. 데이터 삽입 기초-preparedStatement (0) | 2011.11.30 |
자바-오라클 연동 2. 데이터 삽입 기초-일반적 statement (1) | 2011.11.29 |
자바-오라클 연동 1. 테이블생성, 연동 설정 (0) | 2011.11.28 |