0. Reference
- Database System concepts 7th를 보고 정리하였습니다.
1. Introduction
- DB System은 두 가지 주요 언어를 제공한다.
i) DDL(Data-Definition Language)
--> DB Schema를 정의하는 데 사용된다.
ii) DML(Data-Manipulation Language)
--> DB에서 데이터를 조회하거나 수정하는 쿼리를 작성하는데 사용된다.
- 여기서, DDL과 DML은 별개의 언어가 아니고, SQL이라는 언어의 일부라고 생각하면 된다.
2. DDL(Data-Definition Language)
- DDL은 DB Schema를 정의하는 명령어 집합을 의미한다.
- 단순히 테이블을 생성할 뿐 아니라, 데이터 저장 구조와 접근방법, 제약 조건도 정의한다.
2.1. Data Strorage and Definition Language
- 데이터가 어떻게 저장되고 접근될 것인지 정의한다.
- 주로 DBMS(Database Management System) 내부에서 처리된다.
2.2. Consistency Constraints
- DB에 저장되는 데이터는 특정 제약 조건을 반드시 만족해야 한다.
ex) 대학에서 학과의 계좌 잔액이 0보다 작을 수 없도록 설정
- 데이터가 삽입되거나 수정될 때, System은 제약 조건을 자동으로 체크해준다.
2.3. Data Dictionary
- Metadata를 생성가능하다.
- Metadata란 데이터에 대한 설명을하는 데이터를 의미한다.
ex) table 이름, 속성 이름, data type, 제약 조건 등등
- 이러한 Metadata는 Data Dictionary에 저장된다.
- Data Dictionary란, DBMS만 접근할 수 있는 특수한 테이블을 의미한다.
- DB System은 데이터를 읽거나 수정할 때 항상 data dictionary를 참조하여 Schema와 제약조건을 확인한다
3. DML(Data-Manipulation Language)
3.1. DML 기능
- DML은 다음과 같은 기능을 한다.
i) 데이터 조회
- DB에서 필요한 정보를 검색한다.
ii) 데이터 삽입
- DB에 새로운 데이터를 추가한다.
iii) 데이터 삭제
- DB에 기존 데이터를 삭제한다.
iv) 데이터 수정
- 기존 데이터를 수정하거나 업데이트 한다.
3.2. DML의 유형
- DML은 크게 두 가지 유형으로 분류된다.
i) Procedural DML
- 무엇을 조회할지와 어떻게 조회할지를 명시적으로 작성해야 한다.
ii) Declarative DML
- 무엇을 조회할지만 명시하고 어떻게 가져올지는 시스템이 자동으로 처리한다.
- Declarative DML이 학습과 사용이 더 간단하고, SQL에서도 사용된다.
- 하지만, 시스템이 효율적인 데이터 접근 방법을 스스로 찾아야 하므로,
- 시스템 내부의 쿼리 처리 과정이 더 복잡할 수 있다.
3.3. Query, Query Language
- Query란 DB에서 정보를 조회하기 위한 요청을 의미한다.
- DML에서 데이터를 조회하는 부분을 Query Language라고 부린다.
- DML과 Query Language는 엄연히 다른 개념이지만, 일상적으론 동일하게 사용된다.
'CS Study > Database(DB)' 카테고리의 다른 글
[DB] [1.6] Database Engine (1) | 2025.03.17 |
---|---|
[DB] [1.5] Database Design (0) | 2025.03.16 |
[DB] [1.3] View of Data (0) | 2025.03.16 |
[DB] [1.2] Purpose of Database Systems (0) | 2025.03.16 |
[DB] [1.1] Database 정리할 때 사용할 원서 (0) | 2025.03.16 |
0. Reference
- Database System concepts 7th를 보고 정리하였습니다.
1. Introduction
- DB System은 두 가지 주요 언어를 제공한다.
i) DDL(Data-Definition Language)
--> DB Schema를 정의하는 데 사용된다.
ii) DML(Data-Manipulation Language)
--> DB에서 데이터를 조회하거나 수정하는 쿼리를 작성하는데 사용된다.
- 여기서, DDL과 DML은 별개의 언어가 아니고, SQL이라는 언어의 일부라고 생각하면 된다.
2. DDL(Data-Definition Language)
- DDL은 DB Schema를 정의하는 명령어 집합을 의미한다.
- 단순히 테이블을 생성할 뿐 아니라, 데이터 저장 구조와 접근방법, 제약 조건도 정의한다.
2.1. Data Strorage and Definition Language
- 데이터가 어떻게 저장되고 접근될 것인지 정의한다.
- 주로 DBMS(Database Management System) 내부에서 처리된다.
2.2. Consistency Constraints
- DB에 저장되는 데이터는 특정 제약 조건을 반드시 만족해야 한다.
ex) 대학에서 학과의 계좌 잔액이 0보다 작을 수 없도록 설정
- 데이터가 삽입되거나 수정될 때, System은 제약 조건을 자동으로 체크해준다.
2.3. Data Dictionary
- Metadata를 생성가능하다.
- Metadata란 데이터에 대한 설명을하는 데이터를 의미한다.
ex) table 이름, 속성 이름, data type, 제약 조건 등등
- 이러한 Metadata는 Data Dictionary에 저장된다.
- Data Dictionary란, DBMS만 접근할 수 있는 특수한 테이블을 의미한다.
- DB System은 데이터를 읽거나 수정할 때 항상 data dictionary를 참조하여 Schema와 제약조건을 확인한다
3. DML(Data-Manipulation Language)
3.1. DML 기능
- DML은 다음과 같은 기능을 한다.
i) 데이터 조회
- DB에서 필요한 정보를 검색한다.
ii) 데이터 삽입
- DB에 새로운 데이터를 추가한다.
iii) 데이터 삭제
- DB에 기존 데이터를 삭제한다.
iv) 데이터 수정
- 기존 데이터를 수정하거나 업데이트 한다.
3.2. DML의 유형
- DML은 크게 두 가지 유형으로 분류된다.
i) Procedural DML
- 무엇을 조회할지와 어떻게 조회할지를 명시적으로 작성해야 한다.
ii) Declarative DML
- 무엇을 조회할지만 명시하고 어떻게 가져올지는 시스템이 자동으로 처리한다.
- Declarative DML이 학습과 사용이 더 간단하고, SQL에서도 사용된다.
- 하지만, 시스템이 효율적인 데이터 접근 방법을 스스로 찾아야 하므로,
- 시스템 내부의 쿼리 처리 과정이 더 복잡할 수 있다.
3.3. Query, Query Language
- Query란 DB에서 정보를 조회하기 위한 요청을 의미한다.
- DML에서 데이터를 조회하는 부분을 Query Language라고 부린다.
- DML과 Query Language는 엄연히 다른 개념이지만, 일상적으론 동일하게 사용된다.
'CS Study > Database(DB)' 카테고리의 다른 글
[DB] [1.6] Database Engine (1) | 2025.03.17 |
---|---|
[DB] [1.5] Database Design (0) | 2025.03.16 |
[DB] [1.3] View of Data (0) | 2025.03.16 |
[DB] [1.2] Purpose of Database Systems (0) | 2025.03.16 |
[DB] [1.1] Database 정리할 때 사용할 원서 (0) | 2025.03.16 |