dongdorodongdong
관계형데이터베이스 개요 본문
데이터베이스
- 정의
- 기업, 조직, 개인이 필요에 의해 데이터를 일정한 형태로 저장
- DBMS (DB 관리 S/W) - 발전
- 60년대 : flow-chart 중심
- 70년대 : Hierachical, Network
- 80년대 : 관계형 데이터베이스 상용화, Oracle, Sybase, DB2와 같은 제품
- 90년대 : 객체 관계형 데이터베이스, Oracle, Sybase, Informix, DB2, Teradata, SQL Server - 관계형데이터베이스
- E.F. Codd 박사의 논문에서 처음 소개
- 장점
> 정규화를 통해 Anomaly 현상을 제거하고 데이터 중복을 피함
> 동시성 관리, 병행 제어를 통해 데이터 공유
> 데이터 표준화, 품질 확보
> 보안 기능
> 데이터의 무결성 보장
> 데이터의 회복/복구 기능
- File System
> 동시에 입력, 수정, 삭제를 할 수 없어 관리가 어려움
> 복사본 파일을 만들어 사용할 때 데이터의 불일치성이 발생
SQL (Structured Query Language)
- DML (Data Manipulation Language)
- SELECT (=RETRIEVE)
- INSERT
- UPDATE
- DELETE - DDL (Data Definition Language)
- CREATE
- ALTER
- DROP
- RENAME - DCL (Data Control Language)
- GRANT
- REVOKE - TCL (Transaction Control Language)
- COMMIT
- ROLLBACK
Tables
- 정의
- 데이터를 저장하는 객체(Object)
- 관계형 데이터베이스의 기본 단위
Key
- 슈퍼키
- 하나 이상의 속성들의 집합으로 구성된 키
- 유일성(튜플을 유일하게 식별) - 후보키
- 슈퍼키 중 최소의 속성 집합으로 구성된 키
- 유일성 + 최소성 - 기본키
- 후보키 중의 하나 - 대체키
- 기본키로 선택받지 못한 나머지 후보키들 - 외래키
- 릴레이션간 참조할 때 기준이 되는 속성
ERD (Entity Relationship Diagram)
- 구성 요소
- 엔티티 (Entity)
- 관계 (Relationship)
- 속성 (Attribute)