STUDY/자격증

DB SQL 조작어 DCL, 뷰 (정보처리기사 / 산업기사 실기)

NightOwl 2018. 10. 6. 20:02
728x90

 DCL 은 관리자가 데이터 보안, 무결성 유지, 병행제어, 회복을 하기 위해 관리자(DBA)가 사용하는 언어이며, COMMIT, ROLLBACK, GRANT, REVOKE 등이 있다.


1. COMMIT 

 DB내 연산이 성공적으로 수행되어 연산에 의한 수정내용을 지속적으로 유지하기위함


2. ROLLBACK

 DB내의 연산이 비정상적으로 종료되거나, 정상 수행 했더라도 이전 상태로 되돌리기 위함


3. GRANT

 관리자 DBA가 사용자에게 데이터베이스에 관한 권한을 부여하기 위함


 GRANT 권한내용 ON 테이블 TO 사용자 [WITH GRANT OPTION];

: 관리자가 사용자에게 테이블에 대한 권한내용을 부여한다.

 WITH GRANT OPTION은 사용자가 권한을 받고 난 후 다른사람들과 권한을 나눠가질 수 있는지의 옵션


Q) 관리자가 사용자 HHH에게 [학생]테이블에 대해 UPDATE 할 수 있는 권한과 그 권한을 필요시 다른 사용자에게 부여 할 수 있는 권한을 부여.

A) GRANT UPDATE ON 학생 TO HHH WITH GRANT OPTION;



4. REVOKE

 관리자가 사용자에게 부여했던 권한을 취소하기 위함


REVOKE 권한 ON 테이블 FROM 사용자 [CASCADE];

 : 관리자가 사용자에게 부여했던 테이블에 관한 권한을 취소한다.

 CASCADE는 연쇄적인 권한을 해제할때 입력한다. (WITH GRANT OPTION으로 부여된 사용자들의 권한까지 취소)


Q) 관리자가 사용자 HHH에게 부여했던 [학생] 테이블의 UPDATE 권한을 취소.

A) REVOKE UPDATE ON 학생 FROM HHH CASCADE;



2017년 2회 정보처리기사 기출

Q) 데이터베이스에서 작업의 논리적 단위인 트랜잭션은 COMMIT 되거나 ROLLBACK 되어야 한다. COMMIT개념에 대하여 간략히 설명하세요.

A) COMMIT 명령어는 데이터베이스내의 연산이 성공적으로 종료되어 연산에 대한 수정된 내용을 지속적으로 유지하기 위한 명령어 / 트랜잭션이 성공적으로 종료된후 내용을 지속적으로 유지하기 위한 명령어




뷰(VIEW)

 하나 이상의 테이블로 부터 유도되어 만들어진 가상테이블이다. 처리 과정 중간이나 보안적인 측면 때문에 테이블의 일부 내용을 검색해 보여주는 임시테이블이다. 실제 기억공간을 차지 하지 않으며, 논리적 독립성을 제공하며 보안성을 향상 시킨다. CREATE 명령문을 이용하여 뷰를 생성한다.

 - 기본테이블이 제거되면 해당 테이블에 정의된 뷰도 자동 제거

 - SELECT 검색은 일반테이블과 거의 동일

 - 기본키가 포함 되어있으면 삽입, 삭제, 갱신이 불가

 - 뷰는 ALTER문을 이용하여 수정 불가 (DROP후 CREATE 해야한다)

 - 한번 정의된 뷰는 변경할 수 없으며 삭제한 후 다시 생성



1. 뷰 생성


CREATE VIEW 뷰이름[(뷰속성)] AS SELECT 기본테이블 속성

FROM 기본테이블이름[WHERE 조건] [WITH CHECK OPTION]; 

 : WITH CHECK OPTION은 뷰에대한 연산이 작동할때 WHERE절의 조건에 맞지 않는 것은 실행이 되지 않도록 함.


2. 뷰 삭제


DROP VIEW 뷰이름 [RESTRICT | CASCADE];

: RESTRICT 는 삭제할 뷰가 다른 곳에 참조 중이면 삭제가 취소되고 CASCADE는 모두 연쇄적으로 삭제된다.



시스템카탈로그(SYSTEM CATALONG)

 - 테이블, 인덱스, 뷰 , 제약조건 등 정보와 정보들간의 관계를 저장한 데이터베이스

 - 데이터 사전 DATA DICTIONARY 라고도 함

 - 시스템 카탈로그에 저장된 데이터는 메타데이터 META DATA 


2017년 2회 정보처리기사 기출

Q) (   )는 정보의 정보를 의미하며, 다양한 형태의 자원을 관리하고 검색하는 역할을 하는 데이터에 관한 구조화된 데이터라고 말할 수 있다. ( )은 시스템 카탈로그에 저장된 데이터를 의미한다.

A) 메타데이터 / META DATA


Q) (  ) 데이터베이스에 저장되어 있는 모든 개체들에 대한 정보를 관리 하는 시스템 데이터 베이스로 '시스템 카탈로그'라고도 한다.

A) 데이터 사전 / DATA DICTIONARY

 

728x90