728x90
반응형
관계형 데이터베이스
권한 받기 | 데이터 구조 정의 | 데이터 변형 | 데이터 조회 |
DCL (Data Control Language) |
DDL (Data Definition Language) |
DML (Data Manipulation Language) |
|
GRANT : 권한 부여 | CREATE : 구조 생성 | INSERT : 데이터 입력 | SELECT : 조회 |
REVOKE : 권한 회수 | ALTER : 구조 변경 | UPDATE : 데이터 수정 | |
DROP : 구조 삭제 | DELETE : 데이터 삭제 | ||
RENAME : 이름 변경 | |||
TRUNCATE : 테이블 초기화 |
데이터 모델링의 특징
- 추상화 : 현실세계를 일정한 형식에 맞춰 표현하기 위함
- 정확화 : 누구나 이해할 수 있도록 현상을 기술
- 단순화 : 복잡한 현실을 이해하기 쉽게 제한된 언어와 표기법으로 단순하게 표현하기 위함
- 현실세계를 단순하게 추상화하여 정확하게 공유하는 작업이 데이터 모델링
- 정보시스템을 구축하기 위한 업무 분석 기법
- 현실세계의 데이터에 대해 약속된 표기법으로 표현
- 데이터베이스를 구축하기 위한 분석과 설계를 위한 과정
데이터 모델링의 유의사항
- 중복성 : 중복을 최소화해야 함 (같은 정보를 여러번 저장하는 것은 지양)
- 비유연성 : 데이터의 정의 ⇔ 데이터 사용 프로세스, 프로그램 ⇔ 테이블 간의 연계성을 줄여서,
데이터 혹은 프로세스의 변화가 데이터베이스에 중대한 변화를 초래하지 않도록 유연하게 관리해야 함 - 비일관성 : ‘약속된 표기법'을 준용하는 등 업무를 명확하게 정의해서 정보 관리의 일관성을 최대화 해야함
데이터 모델링의 단계
- 개념적 데이터 모델링 : 추상화 수준이 높음. 전사적 모델링 시 많이 함. 포괄적 수준의 모델링
- 논리적 데이터 모델링 : Key, 속성, 관계 등을 정확히 기술하는 모델링
- 물리적 데이터 모델링 : 실제로 데이터 베이스에 이식 가능하도록 저장, 성능 등 물리적인 특성을 고려한 모델링
데이터베이스 스키마 구조 3단계
- 외부스키마 : [사용자 관점] 응용프로그램을 사용하는 개별 사용자 관점으로 데이터베이스를 정의하는 구조
- 개념스키마 : [통합 관점] 모든 사용자의 관점을 통합한 조직 전체의 관점의 통합적 데이터 베이스 구조
- 내부스키마 : [개발자 관점] 어떤 데이터를 어떻게 저장할 것인지 데이터베이스의 물리적 저장 구조
데이터의 구성
엔터티
- 해당 업무에서 필요하고 관리해야하는 정보여야 함
- 유일한 식별자에 의해 식별이 가능해야 함 (ex.회원 테이블 상 고객번호)
- 하나의 엔터티는 반드시 2개 이상의 인스턴스를 가져야 함
- 하나의 엔터티는 반드시 속성이 있어야 함 (2개 이상)
- 하나의 엔터티는 반드시 1개 이상의 관계가 있어야 함 (통계성, 코드성 엔터티 제외)
- 발생시점에 따른 엔터티 분류
- 기본엔터티 : 독립적 생성되는 엔터티
- 중심엔터티 : 기본 엔터티로부터 발생하고 행위 엔터티를 생성함
- 행위엔터티 : 기본, 중심 엔터티 등 2개 이상의 엔터티로부터 발생함
속성
- 업무에서 필요한 인스턴스에서 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위
- 1개의 속성은 1개의 속성값을 가진다
- 기본속성 / 설계속성 / 파생속성
- 설계속성 : 코드성 컬럼, 일련번호 등 규칙화를 위한 속성
- 파생속성 : 계산된 값 (테이블 내에 적을수록 좋음)
- 기본속성 : 업무상 바로 정의가 가능한 속성 (이름, 계좌번호, 주문일자..)
문제
Q. 은행은 고객에게 지급되는 월단위 ‘이자’를 관리하고자 한다. 이때 이자는 어떤 속성일까? 파생속성
Q. 그렇다면, 예금 분류에 따라 관리되는 ‘이자율’은 어떤 속성일까? 기본속성
- * 각 속성이 가질 수 있는 값의 범위를 속성의 ‘도메인'이라고 함 (데이터타입, 크기, 제약사항 등 지정)
- ex. 은행계좌 라는 엔터티가 있을 때, 계좌명이라는 속성은 길이가 20자리 이내의 문자열로 정의한다.
SQLD 목차 바로가기
728x90
반응형
'자격증 > SQLD' 카테고리의 다른 글
[SQLD 자격증] 1과목 | 성능 데이터 모델링, 정규화, 반정규화 설명 & 문제풀이 (1) | 2023.03.06 |
---|---|
[SQLD 자격증] 1과목 | 관계, 식별자 (0) | 2023.03.06 |
[SQLD 자격증] 2과목 | 옵티마이저 JOIN 설명 & 문제풀이 (0) | 2023.03.06 |
[SQLD 자격증] 2과목 | 테이블 파티션, 옵티마이저, 인덱스 설명 & 문제풀이 (0) | 2023.03.06 |
[SQLD 자격증] 2과목 | WINDOW 함수 전체 설명 & 문제풀이 (0) | 2023.03.06 |
댓글