데이터베이스(DB, Database) 는 통합하여 관리되는 데이터의 집합체
이는 중복된 데이터를 없애고, 자료를 구조화하여, 효율적인 처리를 할 수 있도록 관리
데이터베이스는 응용 프로그램과는 다른 별도의 미들웨어에 의해 관리
데이터베이스를 관리하는 이러한 미들웨어를 데이터베이스 관리 시스템(DBMS: Database Management System)
사용자의 질의(query)에 대하여 즉각적인 처리와 응답이 이루어집니다.
생성, 수정, 삭제를 통하여 항상 최신의 데이터를 유지합니다.
사용자들이 원하는 데이터를 동시에 공유할 수 있습니다.
사용자가 원하는 데이터를 주소가 아닌 내용에 따라 참조 할 수 있습니다.
응용프로그램과 데이터베이스는 독립되어 있으므로, 데이터의 논리적 구조와 응용프로그램은 별개로 동작됩니다.
SQL(Structured Query Language) 은 데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어
DDL(Data Definition Language)
DML(Data Manipulation Language)
DCL(Data Control Language)
데이터베이스나 테이블 등을 생성, 삭제하거나 그 구조를 변경하기 위한 명령어
CREATE, ALTER, DROP
데이터베이스에 저장된 데이터를 처리하거나 조회, 검색하기 위한 명령어
INSERT, UPDATE, DELETE, SELECT 등
데이터베이스에 저장된 데이터를 관리하기 위하여 데이터의 보안성 및 무결성 등을 제어하기 위한 명령어
GRANT, REVOKE 등
관계형 데이터베이스(RDB, relational DB) 는 데이터베이스의 한 종류
테이블(table)로 이루어져 있으며, 이 테이블은 키(key)와 값(value)의 관계를 나타낸다
데이터의 종속성을 관계(relationship)로 표현하는 것이 관계형 데이터베이스의 특징
(Entity Relationship Diagram)
존재하는 것. 사물, 사람 등 행위자 또는 개념적으로 표현할 수 있는 것
Entities의 관계를 나타내는 것.
일대일 관계(One-to-One) : 한개의 엔티티가 다른 엔티티에 1개를 가지는 관계
일대다 관계(One-to-Many) : 하나의 엔티티가 다른 엔테티를 1개 이상을 가지는 관계
다대다 관계(Many-to-Many) : 여러 개의 엔티티가 다른 엔티티를 1개 이상을 가지는 관계
Entities들의 관계들을 시각화하여 보여주는 도면(일종의 프로그램 설계 도면)