DATA/My SQL

[Database] 데이터베이스란?

yuns94 2022. 1. 13. 17:51

데이터베이스란?

  • 데이터베이스(DB: Database)는 통합하여 관리되는 데이터의 집합체를 의미합니다.
  • 이는 중복된 데이터를 없애고, 자료를 구조화하여, 효율적인 처리를 할 수 있도록 관리됩니다.
  • 이러한 데이터베이스는 응용 프로그램과는 다른 별도의 미들웨어에 의해 관리됩니다.
  • 데이터베이스를 관리하는 이러한 미들웨어를 데이터베이스 관리 시스템(DBMS: Database Management System)이라고 부릅니다.

DBMS란 ?

  • DBMS란 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리할 수 있게 해주는 소프트웨어입니다.
  • DBMS는 기존의 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템으로 모든 응용 프로그램들이 데이터베이스를 공용할 수 있도록 관리해줍니다.
  • DBMS는 데이터베이스의 구성, 접근방법, 유지관리에 대한 모든 책임을 집니다.

데이터베이스의 특징

  • 사용자의 질의에 대하여 즉각적인 처리와 응답이 이루어집니다.
  • 생성, 수정, 삭제를 통하여 항상 최신의 데이터를 유지합니다.
  • 사용자들이 원하는 데이터를 동시에 공유할 수 있습니다.
  • 사용자가 원하는 데이터를 주소가 아닌 내용에 따라 참조할 수 있습니다.
  • 응용 프로그램과 데이터베이스는 독립되어 있으므로, 데이터의 논리적 구조와 응용 프로그램은 별개로 동작됩니다.
  • SQL은 데이터베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어입니다.
  • 따라서 SQL 구문도 위의 목적에 맞게 크게 세 가지로 구분할 수 있습니다.

SQL(Structured Query Language)

  1. DDL(Data Definition Language) : 데이터 정의어 란 ? 데이터베이스를 정의하는 언어이며, 데이터리를 생성, 수정, 삭제하는 등의 데이터의 전체의 골격을 결정하는 역할을 하는 언어이다.
종류 역할
CREATE 데이터베이스, 테이블등을 생성하는 역할을 합니다.
ALTER 테이블을 수정하는 역할을 합니다.
DROP 데이터베이스, 테이블을 삭제하는 역할을 합니다.
TRUNCATE 테이블을 초기화 시키는 역할을 합니다.

 

더보기
    * SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어
    * 데이터베이스 관리자나 데이터베이스 설계자가 사용

2. DML(Data Manipulation Language) - 데이터 조작어 정의된 데이터베이스에 레코드를 조회하거나 수정하거나 삭제하는 등의 역할을 하는 언어를 말합니다.

종류 역할
SELECT 데이터를 조회하는 역할을 합니다.
INSERT 데이터를 삽입하는 역할을 합니다.
UPDATE 데이터를 수정하는 역할을 합니다.
DELETE 데이터를 삭제하는 역할을 합니다.
더보기
* 데이터베이스 사용자가 응용 프로그램이나 질의어를 통해 저장된 데이터를 실질적으로 처리하는데 사용하는 언어 이다.* 데이터베이스 사용자와 데이터베이스 관리 시스템 간의 인터페이스를 제공한다.

 3. DCL(Data Control Language) - 데이터베이스에 접근하거나 객체에 권한을 주는 등의 역할을 하는 언어를 말한다.

종류 역할
GRANT 특정 데이터베이스 사용자에게 특정 작업에 대한 수행권한 부여한다.
REVOKE 특정 데이터베이스 사용자에게 특정 작업에 대한 수행 권한을 박탈, 회수 한다.
COMMIT 트랜잭션의 작업을 취소 및 원래대로 복구하는 역할을 한다.
ROLLBACK 트랜잭션의 작업을 취소 및 원래대로 복구하는 역할을 한다.
더보기

* 데이터를 제어하는 언어 입니다.

* 데이터의 보안, 무결성, 회복, 병행 수행제어 등을 정의하는 사용합니다.