Don't Panic
in DB ☕ 5분 읽기

[DB] RDBMS,DCL,DDL,DML

#DB
목차

RDBMS란?

  • 관계형 데이터베이스 관리 시스템(RDBMS, Relational DataBase Management System)
  • 테이블(table) 기반의 DBMS

주요 특징은 다음과 같다.

  1. 데이터를 테이블 단위로 관리한다.
    • 하나의 테이블은 여러 개의 컬럼으로 구성된다.
  2. 중복 데이터를 최소화한다.
    • 같은 데이터가 여러 컬럼 또는 여러 테이블에 존재하면 데이터 수정 시 문제가 발생할 가능성이 높아진다. → 이를 줄이기 위해 정규화를 수행한다.
  3. 여러 테이블에 분산된 데이터를 검색한다.
    • 검색 시 테이블 간의 관계(join)를 이용해 필요한 데이터를 가져온다.

RDBMS 개념도

SQL

  • 데이터베이스에 있는 정보를 사용할 수 있도록 지원하는 언어
  • 모든 데이터베이스에서 사용 가능
  • 대소문자는 구별하지 않는다.

SQL 개요

SQL 구문은 DDL, DML, DCL로 구분하며, 아래와 같은 종류가 있다.

SQL 구문 분류


SQL의 종류

1. DML (데이터 조작어, Data Manipulation Language)

  • 데이터를 조작하는 기능
  • 테이블의 레코드를 CRUD(Create, Read, Update, Delete)

DML 명령어

2. DCL (데이터 제어어, Data Control Language)

  • 데이터나 테이블의 접근 권한, CRUD 권한을 정의
  • 특정 사용자에게 테이블의 검색 권한을 부여하거나 금지

3. TCL (트랜잭션 제어어, Transaction Control Language)

  • 트랜잭션이란 데이터베이스의 논리적 연산 단위를 의미한다.

DDL (데이터 정의어, Data Definition Language)

DDL 설명 1

DDL 설명 2

DDL 설명 3

DDL 설명 4


MySQL 데이터 타입

MySQL 데이터 타입 1

MySQL 데이터 타입 2

MySQL 데이터 타입 3

MySQL 데이터 타입 4

MySQL 데이터 타입 5


MySQL 테이블 생성

테이블 생성 개요

테이블 생성과 제약조건

제약조건이란 다음과 같다.

  1. 컬럼에 저장될 데이터의 조건을 설정하는 것.
  2. 제약조건을 설정하면 조건에 위배되는 데이터는 저장할 수 없다.
  3. 테이블 설정 시 컬럼에 직접 지정하거나 constraint로 지정할 수 있고, alter를 사용해 설정할 수도 있다.

제약조건 1

제약조건 2

제약조건 3

제약조건 4


DML

DML 설명 1

DML 설명 2 DML 설명 3

DML 설명 4 DML 설명 5 DML 설명 6 DML 설명 7


DML (SELECT)

SELECT 설명 1

SELECT 설명 2 SELECT 설명 3

SELECT 설명 4

SELECT 설명 5 SELECT 설명 6 SELECT 설명 7 SELECT 설명 8 SELECT 설명 9 SELECT 설명 10 SELECT 설명 11 SELECT 설명 12

SELECT 설명 13 SELECT 설명 14


내장함수

MySQL 내장함수는 다음과 같이 분류할 수 있다.

  1. 숫자 관련 함수
  2. 문자 관련 함수
  3. 날짜 관련 함수
  4. 논리 관련 함수
  5. 그룹 함수

내장함수 1

내장함수 2

내장함수 3

내장함수 4

내장함수 5

내장함수 6

내장함수 7

내장함수 8

내장함수 9

내장함수 10

내장함수 11 내장함수 12

내장함수 13 내장함수 14 내장함수 15 내장함수 16


트랜잭션

트랜잭션이란 데이터베이스의 상태를 변화시키는 일종의 작업 단위를 의미한다.

트랜잭션 1 트랜잭션 2 트랜잭션 3