2-1장 SQL 기본 - 1절 관계형 데이터베이스 개요

Study/SQLD

2-1장 SQL 기본 - 1절 관계형 데이터베이스 개요

tnddj1219 2022. 6. 20. 00:07
728x90

1. 데이터베이스

데이터베이스 개념
데이터(일상적인 정보)를 일정한 형태로 저장해 놓은 것.
특정 기업이나 조직 또는 개인이 필요에 의해 데이터를 일정한 형태로 저장해 놓은 것
DBMS
를 통해 효율적인 관리와 데이터베이스 관리 및 손상 복구가 가능

 

데이터베이스의 발전
1960
년대: 플로우차트 중심의 개발 방법 사용, 파일구조를 통해 데이터를 저장, 관리
1970
년대: 데이터베이스 관리 기법이 처음 태동, 계층형 데이터베이스, 망형 데이터베이스 상용화
1980
년대: 관계형 데이터베이스 상용화, Oracle, Sybase, DB2 제품 사용
1990
년대: Oracle, Sybase, Informix, DB2, Teradata, SQL Server 등 핵심 솔루션이 됨, 객체 관계형 데이터베이스로 발전

 

데이터베이스 종류
계층형 DB: 트리 형태의 자료구조에 데이터 저장, 1:N 관계 표현
네트워크형 DB: 오너와 멤버 형태로 데이터 저장, M:N 관계 표현
관계형 DB: 릴레이션에 데이터 저장, 집합 연산과 관계 연산 가능
파일 시스템: 하나의 파일을 여러 사람이 동시에 검색. 동시에 입력, 수정, 삭제할 수 없음. 한꺼번에 병행처리하지 않으면 다른 정보 파일 존재하여 데이터 불일치성 발생(데이터 정합성 유지하기 위한 노력 필요)

 

관계형 데이터 베이스(RDB)
정규화를 통해 이상현상 및 중복 데이터 제거, 동시성 관리와 병행 제어를 통해 데이터 동시조작 가능
데이터의 성격, 속성 또는 표현방법 등을 체계화할 수 있고, 데이터 표준화를 통한 품질 확보 가능
보안 기능 제공. 제약조건을 이용하여 데이터 무결성 보장
현재 기업에서는 사용하는 대부분의 데이터베이스는 객체 관계형 데이터베이스를 사용

 

관계형 데이터베이스 집합 연산
합집합(Union)
차집합(Difference)
교집합(Intersection)
곱집합(Cartesian Product): 각 릴레이션에 존재하는 모든 데이터를 조합

 

관계형 데이터베이스 관계 연산
선택 연산(Selection): 조건에 맞는 행(튜플) 조회
투영 연산(Projection): 조건에 맞는 칼럼(속성) 조회
결합 연산(Join): 공통 속성을 사용하여 새로운 릴레이션 생성

 

2. SQL

개념
관계형 데이터베이스에서 데이터 정의, 조작, 제어하기 위해 사용하는 언어
SQL
문장은 단순 스크립트가 아니라 이름에도 포함되듯, 일반적인 개발 언어처럼 독립된 하나의 개발 언어
SQL
튜닝 목적: 시스템에 큰 영향을 주는 SQL을 효과적(응답시간 최소화, 자원활용 최소화)으로 작성하는 것이 목표

 

SQL 종류
DML(Data Manipulation Language,
데이터 조작어)
- SELECT:
데이터 조회 명령어
- INSERT, UPDATE, DELETE:
데이터 변형 명령어
DDL(Data Definition Language,
데이터 정의어): 데이터 구조 관련 명령어
- CREATE, ALTER DROP
DCL(Data Control Language,
데이터 제어어): DB 접근 권한 부여 및 회수 명령어
- GRANT, REVOKE
TCL(Transaction Control Language,
트랜잭션 제어어): DML로 조작한 결과를 논리적인 작업단위 별로 제어
- COMMIT, ROLLBACK

3. Table(테이블)

테이블 개념
관계형 데이터베이스의 기본 단위. 데이터를 저장하는 객체, 칼럼과 행의 2차원 구조
모든 자료는 테이블에 등록 되고, 우리는 테이블로부터 원하는 자료를 꺼내 올 수 있음
테이블은 어느 특정한 주제와 목적으로 만들어지는 일종의 집합

 

테이블 관련 용어 정리
테이블: 행과 칼럼의 2차원 구조를 가진 데이터의 저장소. 데이터베이스의 기본적인 개념
칼럼/: 2차원 구조를 가진 테이블에서 세로방향으로 이루어진 하나하나의 속성. 더 이상 나눌 숭벗음
로우/: 2차우너 구조를 가진 테이블에서 가로방향으로 이루어진 데이터
필드: 칼럼과 행이 겹치는 하나의 공간

 

4. ERD

팀 정보와 선수 정보 간에는 어떤 의미의 관계가 존재하며, 다른 테이블과도 어떤 의미의 연관성이나 관계 가짐
관게의 의미를 직관적으로 표현할 수 있는 좋은 수단
엔터티는 사각형/ 관계는 다이아몬드로 표현

 

728x90