클릭하세요 자바2 JDK 1.4

Download Report

Transcript 클릭하세요 자바2 JDK 1.4

21장: JDBC
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
1
데이터베이스


데이터의 저장, 검색이 가능한 데이터의 모음
DBMS


데이터베이스를 구현한 하드웨어/소프트웨어
오라클, Access
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
2
관계형 데이터베이스와 SQL

표의 개념을 이용한 데이터 저장



조건 검색


Field: 각 Column으로 구분 가능한 정보 단위
Record: 여러 Column을 묶어서, 하나의 Row로 저장 단위
특정 조건에 맞는 데이터만을 얻을 수 있음
관계란?

테이블간의 관계를 이용하여 새로운 테이블 구성
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
3
고유키와 외래키

고유키


특정 레코드당 주어지는 유일한 값
외래키


다른 테이블에서 특정 테이블의 레코드를 가리키
는 방법
특정 테이블의 고유키를 다른 테이블의 컬럼으로
저장
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
4
SQL



표준적인 검색, 저장, 관리를 위한 언어
벤더 독립적인 언어임
검색


저장


INSERT
삭제


SELECT
DELETE
변경

UPDATE
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
5
SELECT문



테이블의 레코드를 검색하여, 레코드셋 생성
SELECT FIELD명 FROM 테이블 WHERE 조건
eg> SELECT 상점이름, 전화번호 FROM 상점
상점이름
전화번호
북경반점
999-3332
부산떡집
233-0292
현암문구
973-9822
예삐꽃방
289-9393
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
6
INSERT 문



테이블에 레코드를 추가
INSERT INTO 테이블이름 (피일드 명) VALUES (해당 피일드의 데이터)
eg) INSERT INTO 상점주인(주인번호, 이름, 성별) VALUES(4,’김대중’,’남’)
© 대림 & SOA
주인번호
이름
핸드폰
성별
1
강호동
016-028-2838
남
2
최진실
020-299-2991
여
3
박찬호
011-929-8442
남
4
김대중
클릭하세요 자바2 JDK 1.4
남
7
DELETE, UPDATE문

DELETE




특정 레코드를 삭제할때 사용
DELETE FROM 테이블이름 WHERE 조건
eg> DELETE FROM 상점주인 WHERE 성별=‘여’
UPDATE



레코드의 내용을 갱신할 때 사용
UPDATE 테이블명 SET 피일드=값 WHERE 조건
eg> UPDATE 상점주인 핸드폰번호=‘018-xxx’, WHERE 이름=‘최진실’
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
8
JDBC 구조


이기종의 DBMS를 동일한 인터페이스로 접근
JDBC-ODBC 브릿지

ODBC 드라이버를 이용하여 DBMS에 접근
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
9
샘플 데이터베이스


샘플로 주어진 shop.mdb를 이용
설치방법은 p.693 ~ 694 참조
피일드
내용
id
상점번호
name
상점이름
phone
전화번호
address
주소
owner_id
owner_info 테이블의 외래키
피일드
내용
id
주인번호
name
이름
handphone
핸드폰번호
gender
성별
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
10
JDBC 연결
DriverManager를 통한 드
라이버 로딩
Connection 생성
1.
2.


1단 계 : JDBC 드 라 이 버 를
로드한다.
Connection
2단 계 : SQL 데 이 터 베 이 스
와 연결한다.
Statement
3단 계 : SQL쿼 리 를 실 행 한
다.
Statement 클래스 사용
3.



4.
SQL 데이터 베이스 연결
코드 1 실습
DriverManager
SQL 쿼리 실행
insert, select, update,
delete 사용
코드 2,3,4,5 실습
결과를 ResultSet으로 접근
© 대림 & SOA
ResultSet
클릭하세요 자바2 JDK 1.4
4단 계 : 결 과 를 얻 어 낸 다 .
11
메타 데이터의 지원




테이블에 대한 정보를 알려줌
사용자의 데이터 그 자체는 아님
레코드셋의 피일드 수, 데이터 형등
코드 6 실습
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
12
JDBC 예외 처리


SQLException 클래스가 제공
일반 Exception 보다 더 많은 정보 제공




getErrorCode()
getNextException()
getSQLState()
코드 7 실습
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
13
PreparedStatement


1.
실행전에 미리 만들어지는 Statement
일반 Statement보다 빠름
PreparedStatement를 생성
String sqlStr = “SELECT * FROM shop_info WHERE id=?”;
stmt = con.preparedStatement(sqlStr);
2.
?로 지정된 인자에 값을 할당
setXXX(int 순서, 실제 데이터나 변수);
e.g.) stmt.setInt(1, 3);
3.

executeXXX() 메서드를 호출
코드 8 실습
© 대림 & SOA
클릭하세요 자바2 JDK 1.4
14