(1) DATABASE
(2) DBMS (Database Management System)
(3) RDB : Relational Database
(4) SQL(Structured Query Language)
(5) SQL 구성
-SQL의 DATABASE 는 여러 사람이 공유하여 사용할 목적으로 체계화해 통합하고 관리하는 데이터의 집합체로 구조화된 방식으로 데이터를 저장하고 관리하는 시스템이다. DATABASE는 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능하도록 만들어져 있다.
학교 도서관을 예를 들어 도서관에는 수많은 유의미한 책과 지식들이 있고 우리가 필요할 때나 읽고 싶은 책이 있을 때 찾아서 언제든지 꺼내볼 수 있다.
이처럼 DATABASE는 마치 이 도서관과 같다고 할 수 있다. 고객 정보, 판매 기록, 학교 성적 등 우리 주변에 존재하는 다양한 정보 및 데이터들을 여러 사람들이 접근 가능하도록 컴퓨터에 쉽게 저장하고 관리하기 위해 만든 시스템이 바로 DATABASE이다.
DBMS (Database Management System) 는 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해하고 운영해주는 소프트웨어이다.
이는 이전에 예로 들었던 도서관에서 책의 위치를 알려주는 도서 검색기와 같다. 도서 검색기는 책 제목, 작가, 출판사 등을 기입하여 원하는 책을 빠르게 찾고 접근할 수 있도록 도와준다. 마찬가지로 DMBS 소프트웨어를 이용하면 내가 원하는 정보에 쉽게 접근할 수 있다.
RDB : Relational Database 즉, 관계형 DATABASE는 서로간에 관계가 있는 데이터 테이블들을 모아둔 데이터 저장공간이다. 이외에도 많은 DATABASE 가 있지만 현재는 관계형 DBMS가 가장 많이 사용된다.
RDB의 데이터베이스는 테이블(table)이라는 최소 단위로 구성되며, 이 테이블은 하나 이상의 열(column)과 행(row)으로 이루어져 있다. 예를 들어 한글이나 워드에서 표를 정갈하게 만든 경험이 있을텐데 그 표의 모양이 바로 테이블(table) 이며 표 내에 열(column)과 행(row) 이 똑같이 있다고 생각하면 된다.
SQL은 DATABASE에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어이다. 앞서 말한 DBMS와 RDB 관계형 DATABASE 에 해당하는 소프트웨어 언어로 데이터베이스를 사용하기 위해서는 소프트웨어, 즉 DBMS를 설치해야 한다. 대표적으로 MySQL, 오라클(Oracle), SQL 서버 등이 있다.
이전에 예로 들었던 도서관에서 책의 위치를 알려주는 도서 검색기와 같다.SQL도 DATABASE에 저장된 데이터를 원하는 조건에 맞춰 찾아주는 역할을 하는 컴퓨터 프로그래밍 언어이다. 특정 고객의 구매 내역을 확인하거나, 특정 과목의 평균 점수를 계산하는 것도 SQL을 사용하면 대용량의 데이터들도 쉽게 다루는 것이 가능하다.
SQL은 다음과 같은 명령어 및 언어로 구성되어 있으며 아래의 명령어들로 DATABASE를 관리할 수 있다.
데이터 정의 언어 (DDL: Data Definition Language)
-CREATE, ALTER, DROP 등의 명령어
데이터 조작 언어 (DML: Data Manipulation Language)
-INSERT, UPDATE, DELETE, SELECT 등의 명령어
데이터 제어 언어 (DCL: Data Control Language)
-GRANT, REVOKE, COMMIT, ROLLBACK 등의 명령어