DataBase Basic
- 데이터베이스 테이블 & 릴레이션
○ 테이블
- 테이블의 구조는 행(Row)과 열(Column)로 이루어진 2차원의 구조이다.
○ 릴레이션
- 릴레이션은 수학에서의 집합이론에서 파생된 개념이다. 이 릴레이션의 개념에서 관계형 데이터베이스의
테이블과 매핑(Mapping) 시킨다면, 관계형 데이터베이스를 이해하는 기초가 된다.
- 릴레이션(Relation)은 단어 그자체로 관계라는 뜻으로써, 데이터과의 연관성을 나타낸다.
○ 테이블 & 릴레이션
- 테이블과 릴레이션의 차이
1. 모든 테이블은 릴레이션은 아니다.
2. 모든 릴레이션은 모든 테이블이다.
- 1.과 2.의 표현이 말장난 같지만, [E. F. Codd - A Relational Model of Data for Large Shared Data Banks]의
논문에 따르면 릴레이션은 아래와 같은 조건을 만족해야 한다.
[A] Paper - 1.3 A Relational View of Data |
1. Each row represents an n-tuple of R. |
2. The ordering of rows is immaterial. |
3. All rows are distinct. |
4. The ordering of columns is significant—it corresponds to the ordering S1, S2,...,Sn of the domains on which R is defined (see, however, remarks below on domainordered and domain-unordered relations). |
5. The significance of each column is partially conveyed by labeling it with the name of the corresponding domain. |
[B] Paper - 1.3 A Relational View of Data - 풀이 |
- 행(Row)은 개체에 대한 데이터를 포함한다. |
- 열(Column)은 개체의 속성에 대한 데이터를 포함한다. |
- 한 열(Column)의 모든 항목은 동일한 종류이다. |
- 각 열(Column)은 유일한 이름을 가진다. |
- 테이블의 셀은 단일 값을 포함한다. |
- 열(Column)의 순서는 중요하지 않다. |
- 행(Row)의 순서는 중요하지 않다. |
- 어떤 두개의 행(Row)도 동일하지 않다. |
- 위, [A]의 조건을 만족해야지만, 릴레이션이 성립되는 것이다.
- 릴레이션의 조건이 성립될때, 데이터베이스가 정의되고 그에 따른 장점이 구현되는 것 이다.
- 데이터베이스의 정의 : 공유데이터, 통합데이터, 저장데이터, 운영데이터
- 데이터베이스의 장점 : 데이터의 중복 통제, 데이터 독립성 확보, 데이터 보안, 데이터 무결성, 데이터 표준화, 장애
발생시 회복가능, 다수의 응용 소프트웨어에 대한 개발비용 감소
- 결론적으로, 테이블이 조금더 큰 개념이고, 릴레이션은 데이터베이스에서 사용되기 위한 조건이다.
- 릴레이션 조건 위반사항
- "릴레이션의 특징중, 어떤 두개의 행( Row)도 동일하지 않다"를 위반하였기 때문에 테이블은 될수있지만,
릴레이션은 될수 없다.
- "테이블의 셀은 단일 값을 포함한다"를 위반하였기 때문에 테이블은 될수있지만,
릴레이션은 될수 없다.
- 데이터베이스를 조작하는 언어 SQL
○ SQL(Structured Query Language)데이터베이스를 조작하여 입력, 수정, 삭제, 생성등의 기능을 할수 있는 언어
○ SQL(Structured Query Language)는 구조적인 질의 언어로써, 영어 문법과 비슷한 구조를 보임
명령어의 종류 | 명령어 | 설명 | ||||
데이터 조작어 DML DATA MANIPULATION LANGUAGE
|
SELECT | 데이터베이스에 들어 있는 데이터를 조회하거나 검색한기 위한 명령어를 말하는 것, RETRIEVE 라고도 한다. | ||||
INSERT |
데이터베이스의 테이블에 들어 있는 데이터에 변형을 가하는 종류의 명령어들을 말한다. 예를 들어, 데이터를 테이블에 새로운 행을 집어넣거나, 원하지 않는 데이터를 삭제하거나 수정하는 것들의 명령어들을 DML이라고 부른다. |
|||||
UPDATE | ||||||
DELETE | ||||||
데이터 정의어 DDL DATA DEFINITION LANGUAGE
|
CREATE | 테이블과 같은 데이터 구조를 저으이하는데 사용되는 명령어들로 그러한 구조를 생성하거나 변경하거나 삭제하거나 이름을 바꾸는 데이터 구조와 관련된 명령어들을 DDL이라고 부른다. | ||||
ALTER | ||||||
DROP | ||||||
RENAME | ||||||
데이터 제어어 DCL DATA CONTROL LANGUAGE
|
GRANT | 데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어를 DCL이라고 부른다. | ||||
REVOKE | ||||||
트랜잭션제어어 TCL TRANSACTION CONTROL LANGUAGE
|
COMMIT | 논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어를 말한다. | ||||
ROLLBACK |
- 핵심요약
- 테이블 & 릴레이션
- 테이블은 행과 열로 구성되어 있는 2차원 구조
- 릴레이션 릴레이션은 "[B] Paper - 1.3 A Relational View of Data - 풀이"를 만족하는 테이블
- SQL 데이터베이스를 조작하는 언어
- 참고 사이트
'DataBase > DataBase Basic' 카테고리의 다른 글
[DataBase Basic] 관계형 데이터베이스 개요 (0) | 2019.05.27 |
---|---|
[DataBase Basic] 데이터베이스 정의 및 특성 (0) | 2019.05.14 |