250x250
Notice
Recent Posts
Recent Comments
Link
전성빈의 사리사욕
[RDBMS] RDBMS의 이해 본문
728x90
RDBMS란?
- 데이터베이스 관리 시스템의 한 종류로, 가장 많이 사용된다.
- 역사가 오래되어 가장 신뢰성이 높고 데이터를 분류, 정렬, 탐색하는 속도가 빠르다.
- 2차원 테이블(Table) 형식을 이용하여 데이터를 정의하고 설명하는 데이터 모델
- 관계형 데이터베이스 == 테이블
- 관계형 데이터베이스에서는 데이터를 속성(Attribute)과 데이터 값(Attribute Value)으로 구조화
- 데이터를 구조화 한다 : Attribute와 Attribute Value 사이에서 Relation을 찾아내고 이를 테이블 모양의 구조로 도식화함을 의미한다.
- 용어 : Table === Relation, Column === Field === Attribute, Row === Record === Tuple
Primary Key and Foreign Key
- Primary Key (기본키) : Primary Key는 한 Table의 각 Row를 유일하게 식별해주는 Column으로 각 테이블 마다 Primary Key가 존재해야 하며, NULL값을 허용하지 않고, 각 Row마다 유일한 값이어야 한다.()
- Foreign Key (외래키 or 외부키) : Foreign Key는 한 테이블의 Field(=Attribute,column) 중 다른 테이블의 행을 식별할 수 있는 키
데이터베이스 스키마(Schema)
데이터베이스의 테이블 구조 및 형식, 관계 등의 정보를 형식 언어(formal language)로 기술한것이다.
- 관계형 데이터베이스를 사용하여 데이터를 저장할 때 가장 먼저 할 일은 데이터의 공통 속성을 식별하여 Field로 정의하고, Table을 만드는것이다.
- 통상적으로 하나의 Table이 아닌 여러 개의 Table로 만들고, 각 테이블 구조, 형식 관계를 정의한다.
- 이를 스키마라고 하며, 일종의 데이터베이스 설계도로 이해하면 된다.
- 데이터베이스마다 스키마를 만드는 언어가 존재하며, 해당 스키마만 있으면 동일한 구조의 데이터베이스를 만들 수 있다.
SQL(Structured Query Language)
- 관계형 데이터 베이스 관리 시스템에서 데이터를 관리하기 위해 사용되는 표준 프로그래밍 언어이다.
- 데이터베이스 스키마 생성 및 수정, 테이블 관리, 데이터 추가, 수정, 삭제, 조회 등 데이터베이스와 관련된 거의 모든 작업을 위해 사용된다.
- 데이터베이스마다 문법에 약간의 차이가 있지만 표준 SQL을 기본으로 하므로, RDBMS를 위해 필수적으로 알아야한다.
SQL은 크게 3가지 종류로 나뉜다.
1.데이터 정의 언어(DDL, Data Definition Language) : 데이터의 구조를 정의한다.
Table, Index등의 개체를 만들고 관리하는데 사용되는 명령어이다.
CREATE, ALTER, DROP등이 있다.
2.데이터 처리 언어(DML, Data Manipulation Language) : 데이터의 CRUD를 담당한다.
INSERT, UPDATE, SELECT, DELETE 등이 있다.
3.데이터 제어 언어(DCL, Data Control Language) : 데이터 핸들링 권한 설정, 데이터 무결성 처리 등 수행
GRANT : 데이터베이스 개체(Table, Index 등)에 대한 사용 권한 설정 명령어
BEGIN : 트랜잭션(Transaction) 시작
COMMIT : 트랜잭션 내의 실행 결과 적용
ROLLBACK : 트랜잭션의 실행 취소
728x90
'백엔드 로드맵따라가기 > RDBMS' 카테고리의 다른 글
[SQL] SQL 문법 정리 (1) | 2020.12.17 |
---|---|
[RDBMS] 관계형 모델의 스키마와 주요 제약조건 (0) | 2020.10.22 |
[SQL] SQL의 기초(DDL,DML,DCL) (0) | 2020.09.01 |
[DataBase] 기초 : 용어와 장단점 (0) | 2020.08.28 |