SQLD의 자격증 시험에서 자주 나올법한 암기과목을 정리 하였습니다.
데이터베이스 모델링 특징
특징 | 설명 |
추상화(Abstraction) | 현실세계를 간략하게 표현한다. |
단순화(Simple) | 누구나 쉽게 이해할 수 있도록 표현한다. |
명확성(Clarity) | 명확하게 의미가 해석되어야 하고 한가지 의미를 가져야 한다. |
속성의 종류
속성의 종류 | 설명 |
기본속성 | - 비즈니스 프로세스에서 도출되는 본래의 속성이다. - 회원ID, 이름, 계좌번호, 주문일자 등이 있다. |
설계속성 | - 데이터 모델링 과정에서 발생되는 속성이다. - 유일한 값을 부여한다. - 상품코드, 지점코드 등이 있다. |
파생속성 | - 다른 속성에 의해서 만들어지는 속성이다. - 합계, 평균 등이 있다. |
성능을 고려한 데이터모델링 순서
1. 데이터 모델링을 할 때 정규화를 정확하게 수행
2. 데이터베이스 용량산정 수행
3. 데이터베이스에 발생되는 트랜잭션 유형 파악
4. 용량과 트랜잭션의 유형에 따라 반정규화 수행
5. 이력모델의 조정, PK/FK 조정, 슈퍼타입/서브타입 조정 수행
6. 성능관점에서 데이터 모델 검증
데이터 모델링에 있어서 주식별자를 도출하는 것은 중요한 작업이다.
주식별자를 도출하기 위한 기준은 아래와 같다.
- 해당 업무에서 자주 이용되는 속성을 주식별자로 정의한다.
- 명칭, 내역 등과 같이 이름으로 기술되는 것들은 가능하면 주식별자로 지정하지 않는다.
- 복합으로 주식별자를 구성할 경우 너무 많은 속성이 포함되지 않도록 한다.
PL/SQL 특징
1. PL/SQL은 Block구조로 되어있어 각 기능별로 모듈화가 가능하다.
2. 변수, 상수 등을 선언하여 SQL문장 간 값을 교환 한다.
3. IF, LOOP 등의 절차형 언어를 사용하여 절차적인 프로그램이 가능하도록 한다.
4. DBMS 정의 에러나 사용자 정의 에러를 정의하여 사용할 수 있다.
5. PL/SQL은 Oracle에 내장되어 있으므로 Oracle과 PL/SQL을 지원하는 어떤 서버로도 프로그램을 옮길 수 있다.
6. PL/SQL은 응용 프로그램의 성능을 향상시킨다.
7. PL/SQL은 여러 SQL문장을 Block으로 묶고 한번에 Block전부를 서버로 보내기 때문에 통신량을 줄일 수 있다.
명령어의 종류
명령어의 종류 | 명령어 설명 |
데이터 조작어 (DML : Data Manipulation Language) |
SELECT 데이터베이스에 들어 있는 데이터를 조회하거나 검색하기 위한 명령어를 말하는 것으로 RETRIEVE 라고도 한다. INSERT UPDATE DELETE 데이터베이스의 테이블에 들어 있는 데이터에 변형을 가하는 종류의 명령어들을 말한다. 예를 들어 테이블에 새로운 행을 집어넣거나, 원하지 않는 데이터를 삭제하거나 수정하는 것들의 명령어들을 DML이라고 부른다. |
데이터 정의어 (DDL : Data Definition Language) |
CREATE ALTER DROP RENAME 테이블과 같은 데이터 구조를 정의하는 명령어들로 구조를 생성, 변경, 삭제 및 이름을 바꾸는 데이터 구조와 관련된 명령어들을 DDL이라고 부른다. |
데이터 제어어 (DCL : Data Control Language) |
GRANT REVOKE 데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어를 DCL이라고 부른다. |
트랜잭션 제어어 (TCL : Transaction Control Language) |
COMMIT ROLLBACK 논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어를 말한다. |
트랜잭션이란? 데이터베이스의 상태를 변화시키기 위해 수행하는 작업 단위이다.
트랜잭션의 특징 설명
트랙잭션 명 | 설명 |
원자성 (Atomicity) | 트랜잭션이 DB에 모두 반영되거나, 혹은 전혀 반영되지 않아야 한다. (All or Nothing) |
일관성 (Consistency) | 트랜잭션의 작업 처리 결과는 항상 일관성이 있어야 한다. |
고립성 (Isolation) | 둘 이상의 트랜잭션이 동시에 병행 실행되고 있을 때, 어떤 트랜잭션도 다른 트랜잭션 연산에 끼어들 수 없다. |
지속성 (Durability) | 트랜잭션이 성공적으로 완료되었으면, 결과는 영구적으로 반영되어야 한다. |
공부 하는 동안 또 외워야 할 항목등이 있으면 순서대로 올리도록 하겠습니다.
오늘도 보람찬 생존 ^.^
'데이터베이스 > Sql Quiz' 카테고리의 다른 글
SQLD 자격증대비 정리 - 1 (0) | 2023.05.25 |
---|
댓글