본문 바로가기

ComputerScience/Database

DB - 9. JDBC

728x90

1. JDBC

- sql로 database를 구축하는 것 만으로는 응용프로그램을 개발하기 어렵다.

- 사용자와 interfacing을 할 수 있는 응용프로그램을 위한 언어가 필요하다 (general purpose language)

- 따라서 두 언어간의 이질성 극복을 위한 DB API가 필요하다.

- jdbc는 주언어가 java일때 database와 연결하는 java api이다.

1. 가장 먼저 java로 만든 응용프로그램을 db서버와 연결한다. (getConnection)

2. "statement" object를 만들면 이 객체를 통해 db서버와 내용을 주고받게 된다. (Do Actual Work)

3. 생성한 statement객체를 사용해서 query들을 수행하게 된다. (select from group by)

4. ResultSet으로 내용을 받아서 응용을 수행한다.

2. Result Set

- 복수개의 튜플을 담을 수 있는 class type이다. 

- ResultSet rset으로 선언한다.

- rset.next()는 현재 cusor를 다음으로 이동시켜 다음 tuple을 가리키도록 한다.

- getString(컬럼 이름)을 주면 해당 column의 string값을 가져오게 된다. (column 이름을 전달)

- getFloat(2)는 두번째 column의 float값을 가져온다는 뜻이다. (위치를 전달)

- 가져온 값이 null인지 확인하는 구문이다.

3. Dynamic SQL (Prepared Statement)

- runtime에서 sql 문장이 완성되는 것을 말한다.

- PreparedStatement class를 사용한다.

- 일단은 query문에 동적매개변수?를 넣어두고

- 응용프로그램 runtime에 setString(컬럼 번째, 내용)으로 값을 전달한다.

- executeUpdate()로 query문을 수행하게 된다.

- Example2를 호출할때 dept_name을 넘겨주면 동적으로 select query문이 생성되어 작업을 수행한다.

4. 정리

 

728x90
반응형

'ComputerScience > Database' 카테고리의 다른 글

DB - 11. E-R Model 2  (0) 2021.11.04
DB - 10. E-R Model  (0) 2021.10.27
DB - 8. More SQL statements(3)  (0) 2021.10.13
DB - 7. More SQL statements(2)  (0) 2021.10.06
DB - 6. More SQL statements(1)  (0) 2021.09.29