츄르사려고 코딩하는 코집사입니다.
1. JDBC(Java DataBase Connectivity)
- 자바 프로그래밍 언어로 만들어진 클래스와 인터페이스로 이루어진 API
- SQL문을 실행할 수 있는 함수 호출 인터페이스
2. JDBC(Java DataBase Connectivity) 특징
- DBMS 종류에 독립적인 자바 프로그래밍 가능
- DB가 달라지더라도 동일한 API를 사용하게 해줌 -> 드라이버와 URL만 수정하면 된다.
- 자바의 독립적인 플랫폼이라는 특성과 DBMS에 독립적인 특성을 가짐
3. JDBC(Java DataBase Connectivity) 기능
- DB에 연결 설정
- SQL 문장을 DBMS에 전송
- SQL 문장 전송 후 결과 처리
4. JDBC(Java DataBase Connectivity) 인터페이스
1) DB를 만드는 업체에게 제공되는 인터페이스
- 업체에게 제공되는 인터페이스를 각각의 DBMS 업체들이 구현해 놓은것 -> 이게 드라이버
2) 프로그래머에게 제공되는 인터페이스
- SQL 패키지가 제공하고 있는 라이브러리
- 프로그래머는 이 라이브러리를 기반으로 DB 프로그램 작성
5. JDBC(Java DataBase Connectivity) API : java.sql package
1) 드라이버(인터페이스)
- 드라이버에 대한 정보를 가지고 있음
- 모든 드라이버가 반드시 구현해야 하는 인터페이스
- 드라이버의 버전이나 연결에 대한 정보를 알아볼 수 있는 메소드를 가지고 있음.
2) Connection(인터페이스)
- DB에 대한 하나의 세션 표현
- 세션 : 하나의 클라이언트가 서버에 요청하기 위해 연결을 맺은 상태
- DrvierManage 클래스의 gecConnection() 메소드를 사용하여 얻어올 수 있음
- default : setAutoCommit(true)
- 원하는 경우에 commit을 하고 싶거나 Rollback 처리를 하고 싶으면 setAutoCommit(false)로 설정
- 위의 경우에는 SQL 문을 수행할 때마다 명시적으로 commit() 호출
3) Statement(인터페이스)
- SQL 문을 실행하고 결과 값을 가져오기 위해 사용
- public boolean execute(String sql) throws SQLException
- sql문을 구분하지 않고 DML, query, DDL 등을 수행
- 결과가 ResultSet이면 true, DML이거나 특별한 결과가 없으면 false 리턴
- public ResultSet executeQuery(String sql) throws SQLException
- select 처리할 때 사용
- public int executeUpdate(String sql) throws SQLException
- DML SQL을 수행할 때 사용
4) ResultSet(인터페이스)
- query에 대한 결과값 처리
- ResultSet 객체의 커서는 첫번째 레코드보다 바로 이전을 가르킴
- next() : ResultSet 객체의 커서를 이동
- getXXX() 메소드를 이용하여 데이터를 얻어옴
- ex) getString(), getInt() 등
5) PreparedStatement(인터페이스)
- 동일한 SQL문이 여러번 반복적으로 수행될 때 사용하는 객체
- 대용량의 문자나 바이너리 타입의 데이터를 저장하기 위해 사용
- SQL 문이 미리 컴파일 되어 PreparedStatement 객체에 저장
- 여러번 반복 수행 시 clearParameters() 메소르를 이요하여 Statement에 남겨진 값 초기화
- public ResultSet executeQuery() throws SQLException
- Select를 처리할 때 사용
- public int executeUpdate() throws SQLException
- DML 등의 SQL를 수행할 때 사용
6. JDBC(Java DataBase Connectivity) 프로그래밍 개발 순서
1) JDBC Driver Loading
2) DMBS와 연결(Connection 생성)
3) SQL 실행 준비(Statement, PreparedStatement 생성)
4) SQL 실행
- DML(insert, update, delete)
- Query(select)
5) DBMS 연결 끊기
'IT > DB' 카테고리의 다른 글
엑셀(Excel)에서 2개 이상의 열을 기준으로 중복값 찾기 (0) | 2022.04.07 |
---|---|
SQL WHERE 1=1과 1=2 사용하는 이유 (0) | 2022.02.10 |
데이터베이스(DB) JOIN(INNER JOIN / LEFT JOIN / RIGHT JOIN / OUTER JOIN) 정리 (0) | 2021.10.25 |
데이터베이스(DB) 서브쿼리(SubQuery) 정리 (1) | 2021.04.06 |
데이터베이스(DB) JOIN 정리 (0) | 2021.04.06 |
MySQL 데이터베이스 정리 (0) | 2021.04.06 |
JDBC(Java DataBase Connectivity) INSERT 기초 예제 (0) | 2021.03.11 |
데이터베이스(DB) 기초 간략하게 맛보기 (0) | 2021.03.11 |
최근댓글