Daily Life/TIL(Today I Learned)

[TIL] 2020.02.19 (수)

Sujin Lee (Daisy) 2020. 2. 19. 22:11

1. [Oracle/SQL] VIEW

 - 오늘 배운 VIEW 생각나는 내용 적어보기 (백지복습) 

 - VIEW란, "가상테이블" 

 1) 사용목적

 - (1) 사용자 편의성 : Java에서 sql 구문 길게 적을 필요 없이 VIEW를 쓰면 코드가 짧아진다. 

 - (2) 보안 : Java에 sql 구문에서 컬럼명이 직접적으로 드러나지 않기 때문에 보안이 더 좋다. 

 2) 종류

 - (1) 단순VIEW: 하나의 테이블을 참조하는 VIEW

 - (2) 복합VIEW: 두 개 이상의 테이블을 참조하는 VIEW

 - (3) 인라인뷰: 쿼리에서 FROM 뒤에 오는, 서브쿼리. 

 - (4) M-VIEW: 아직 안 배움

 3) 생성

    CREATE VIEW view명

    AS

    SELECT ~~~~

  4) 수정

    CREATE OR REPLACE VIEW view명

    AS

    SELECT ~~~~

    - 이렇게 하면 이미 해당 view명으로 VIEW가 만들어져있었더라도 새로 만들어짐. (덮어쓰기? 느낌) 

  5) 삭제

    DROP VIEW view명

  6) VIIEW 옵션 

  - (1) WITH CHECK OPTION: 디폴트 옵션이 이거임. DML(Manipluation)이 됨

         ==> VIEW가 참조하는 테이블의 원본 데이터가 변경될 수도 있음  

  - (2) WITH READ ONLY: 말 그대로 read-only. 읽을 수만있고 VIEW 변경 불가.

         ==> VIEW가 변경이 불가능하니까 당연히 해당 VIEW가 참조하는 테이블의 원본 데이터도 변경되지 않음. 

 

기타) CATS: 테이블 복사. Create As Table Select. 기존 테이블을 SELECT해서 복사한 것. 

 

2. DBCP 

 - 오늘 배운 내용 생각나는 대로 적어보기 (백지복습)

 1) DBCP (커넥션풀) 

 - 이전까지 JDBC방식을 사용했었음. (ojdbc6.jar 사용)

   : Connect 할때마다 매번 똑같은 구문 계속 반복해서 사용해야 했었음

     선생님이 '이렇게 반복되는 애들은 라이브러리/jar로 만들 수 있겠지?'라고 하셨음 

      ==> 이게 오늘 다운받은 pool.jar 1.6버젼이랑 dbcp.jar 1.4 버젼인듯. 

 - 이전까지의 JDBC 방식에 비해서 DBCP 방식이 더 좋다.

    : 객체 생성을 한 번만 해도 되니까... 편함. 

 2) JDBC

 - 어제까지, 이때가지 우리가 코딩하던 방식.

 - Java가 직접 DB에 연결. 

 - 매번 드라이버에 연결하고, connect 하고... 불편. 

 

반응형

'Daily Life > TIL(Today I Learned)' 카테고리의 다른 글

[TIL] 2020.02.27 (목)  (0) 2020.02.27
[TIL] 2020.02.24 (월)  (0) 2020.02.24
[TIL] 2020.02.23 (일)  (0) 2020.02.23
[TIL] 2020.02.22 (토)  (0) 2020.02.23
[TIL] 2020.02.18 (화)  (0) 2020.02.18
[TIL] 2020.02.17 (월)  (0) 2020.02.17
[TIL] 2020.02.16 (일)  (0) 2020.02.16
[TIL] 2020.02.15 (토)  (0) 2020.02.15