BackEnd/Database

[DB] 데이터베이스 기초 용어 정리 - DBMS, SQL, 관계형 데이터베이스

ryuneng 2025. 1. 19. 00:14
반응형

# 목적

: 데이터베이스(Database) 관련 기초 용어 정리 - DBMS, SQL, 관계형 데이터베이스




# 데이터베이스(Database) 란?

- 여러 사람들이 공유하고 사용할 목적으로 통합관리되는 정보의 집합
- 관련성 있는 데이터의 모음
- 데이터베이스는 반드시 데이터베이스 관리 시스템(DataBase Management System, DBMS)과 함께 한다.




# DBMS 란?

- Database Management System의 약자
- 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합
- 사용자 또는 다른 프로그램의 요구를 처리하고 적절히 응답하여 데이터를 사용할 수 있도록 해준다.
- DBMS를 통해 DB를 사용한다.
- 관계형 데이터베이스(Relational DataBase)를 관리해주는 RDBMS가 가장 많이 사용된다.
- 대표적인 DBMS : Oracle, MySQL, MS SQL Server, DB2, Maria DB, H2, HSQLDB 등

* DBMS의 장점
1. 자료의 통합성을 향상시킨다.
2. 자료의 통합성을 향상시킨다.
3. 데이터의 통제가 강화된다.
4. 보안이 강화된다.




# SQL 이란?

- Structured Query Language, 구조화된 질의 언어
- 데이터베이스와 관련된 명령을 작성할 때 사용하는 언어
* SQL Developer : 명령어 작성 툴

* SQL의 장점
1. 사람의 언어와 유사해 배우기 쉽다.
2. 효율적이다.
3. 기능적으로 완벽하다.(SQL을 사용하여 테이블의 데이터를 정의, 검색, 조작이 가능)


SQL의 종류

1. DDL

- Data Definition Language, 데이터 정의 언어
- 데이터베이스의 구조를 정의하는 명령어
- 주요 명령어

명령어 설명
CREATE 새로운 데이터베이스 객체 생성
DROP 기존 데이터베이스 객체 삭제
ALTER 기존 데이터베이스 객체 변경
TRUNCATE 데이터를 되돌릴 수 없도록 제거

2. DML

- Data Manipulation Language, 데이터 조작 언어
- 데이터베이스에서 데이터를 추가/조회/변경/삭제하는 작업을 수행
- 주요 명령어

명령어 설명
INSERT 테이블에 새로운 데이터 행을 추가
SELECT 테이블에서 데이터를 조회
UPDATE 테이블의 데이터를 변경
DELETE 테이블에 저장된 특정 데이터 행을 삭제

3. DCL

- Data Control Language, 데이터 제어 언어
- 권한제어, 트랜잭션 제어 작업을 수행

명령어 설명
GRANT 특정 사용자에게 특정 작업 수행 권한을 부여
REVOKE 사용자에게 부여된 권한을 박탈
COMMIT 트랜잭션을 실행
ROLLBACK 트랜잭션을 취소
SAVEPOINT 롤백지점 설정




# 관계형 데이터베이스 란?

- Relational Databse의 약자
- 행과 열로 구성된 테이블을 이용해서 데이터를 저장하는 것
- 관계형 데이터베이스는 테이블(table)로 구성된다.
- 테이블은 행(Row)과 열(Column)로 구성된다.
- 데이터베이스를 구성하는 테이블이 다른 테이블과 관계를 맺고 모여있는 집합체

* 데이터 : 테이블의 집합체
* 테이블 : 데이터의 실질적인 저장소

관계형 데이터베이스의 특징

- 데이터의 분류, 정렬, 탐색속도가 빠름
- 신뢰성이 높고, 데이터 무결성을 보장



관계형 데이터베이스의 주요 용어

1) 열(Column)
- 각각의 열은 고유한 이름을 가진다.
- 각각의 열은 자신만의 데이터 타입을 가진다.

2) 행(Row)
- 행은 관련된 데이터의 묶음이다.
- 한 테이블에서 모든 행은 같은 수의 컬럼을 가진다.
- 테이블에서 데이터의 추가/삭제/변경/조회 작업은 행 단위로 이루어진다.

3) 키(Key)
- 테이블에서 행의 식별자(행을 대표하는 값)로 이용되는 컬럼을 기본 키(Primary Key)라고 한다.

4) 관계(Relationship)
- 관계형 데이터베이스에서 테이블 간의 관계를 말하고, 관계를 맺고 있는 데이터 수에 따라 나눈다.
- 관계형 데이터베이스에서는 테이블 간의 관계를 표현하기 위해서 외래키(Foreign Key)를 사용한다.

- 일대일(one-to-one)관계
- 일대다(one-to-many)관계
- 다대다(many-to-many)관계

5) 스키마(Schema)
- 테이블에 대한 청사진
- 테이블의 각 열에 대한 이름, 데이터타입과 기본키, 외래키를 나타낸다.
- 스키마는 객체-관계 다이어그램(ERD:Entity-Relationship Diagram)이나 문자열로 나타낸다.



관계형 데이터베이스 관리시스템(RDBMS)

- Relational Database Management System, RDBMS
- 관계형 데이터베이스를 만들고 업데이트하고 관리하는 데 사용하는 프로그램

 


< 해당 글은 velog에서 이전하며 옮겨온 글로, 가독성이 좋지 않을 수 있는 점 양해 부탁드립니다. >

🔗 velog 버전 보기 : https://velog.io/@ryuneng2/Database-기초용어-DBMS-SQL-RDBMS