Database 개요 (2)
[ 데이터 언어 ]
- 데이터 정의어(Data Definition Language, DDL) : DB에 대한 정의, 수정, 삭제 기능
- 데이터 조작어(Data Manipulation Language, DML) : DB에 저장된 data에 대한 select, insert, update, delete 연산
- 데이터 제어어(Data Control Language, DCL) : DB에 저장된 data의 보안/권한을 제어하거나 쿼리에 대해 동시성 제어를 수행
- ex) 사용자 계정, 세션 관리, 로그인, 서버 관리 등 정보 관리 목적을 위해 사용됨
*데이터 조작어(DML)에 대한 내용은 아래를 클릭하면 된다
[ 데이터 모델 구성요소 ]
- 개체(entity) : 어떤 의미를 나타내면서 단독으로 존재할 수 있는 객체
- 개체 = 개체 인스턴스 + 속성(개체의 타입)
- ex) 학생, 과목, 사람 등
- 도메인(domain) : 속성이 가질 수 있는 값들의 집합 또는 범위
- ex) '성별' 속성의 도메인은 '남', '여'
- 관계 (relationship) : 단독으로 존재하지 못하는 객체
- E-R Diagram (Entity-Relationship)
데이터 테이블에서
1. 행(row) == "레코드(record)" / "튜플(tuple)" / "개체 인스턴스" : 정보를 처리하는 기본 단위로, 1개 이상의 필드
2. 열(column) == "필드(field)" / "속성" / "항목" : DB 시스템에서 처리의 최소 단위
위의 말이 조금 어렵게 들릴 수 있겠지만, 쉽게 말하면 data table에서 레코드, 튜플, 개체 인스턴스를 row(행), 그리고 필드, 속성, 항목을 column(열) 이라고 보면 된다. 하나의 용어로 통일 시킬 순 없는걸까.
위에서 관계(relationship)에 대한 말이 나온 김에 "Relation"이 무엇인지 짚고 넘어가보자
"Relation" : 2차원 형식의 테이블이고, 스키마와 인스턴스를 포함하고 있다.
- *스키마(schema, head) : 해당 객체의 논리적 구조로, DB를 설계/정의할 때 사용됨
- 인스턴스(instance, body) : 해당 객체가 실제로 가지는 물리적인 구조
*스키마는 권한 개체와 권한 대상 중간에 존재하는 개체로, 권한 대상인 개체를 저장하는 저장소이다.
쉽게 생각해서 스키마를 '각각의 DB 개체를 담은 그릇'이라고 볼 수 있는데, 사용자는 DB 개체가 아닌 스키마를 소유하게 된다. 즉, 사용자가 직접 DB에 접근할 수 없기 때문에 보안성이 높다고 볼 수 있고, 스키마 개체를 통해 DB 사용자에 대한 삭제가 쉽다.
Database의 개요 3탄은 아래를 클릭하면 된다 (아래가 마지막 포스트니까 조금만 더 힘을 냅시다..!)
'Database' 카테고리의 다른 글
실행계획 예제 (1) | 2023.10.23 |
---|---|
정규화 (Normalization) (0) | 2021.07.29 |
Database 개요 (3) (0) | 2021.07.29 |
Database 개요 (1) (0) | 2021.07.29 |