본문 바로가기

컴공스러운 공부

데이터베이스 언어 기초 복습하기 (DDL, DML, DCL)

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

  • DB구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어
  • 외부 스키마 명세를 정의함
  • 데이터베이스의 논리적, 물리적 구조 및 구조 간의 사상을 정의함 (mapping)
-- CREATE 데이터베이스/테이블 생성
CREATE TABLE 테이블명1
(
	컬럼명1	NUMBER		NOT NULL,
	컬럼명2	VARCHAR(32)	NOT NULL,
	컬럼명3	DATE		NULL,
	PRIMARY KEY (컬럼명1)
);
-- ALTER 테이블 수정
ALTER TABLE 테이블명1
ADD 추가컬럼명1 NUMBER;

ALTER TABLE 테이블명1
MODIFY 컬럼명2 VARCHAR(100);

ALTER TABLE 테이블명1
DROP 컬럼명3;
-- DROP 데이터베이스/테이블 삭제
DROP TABLE 테이블명1 [CASCADE | RESTRICT];

-- TRUNCATE 테이블 초기화
TRUNCATE TABE 테이블명1;
  • CASCADE: 참조하는 테이블까지 연쇄적으로 제거
  • RESTRICT: 다른 테이블이 참조중일 경우 제거X

 

 

⭐ DML(Data Manipulation Language: 데이터 조작어)

  • 사용자가 DB의 데이터를 실질적으로 조작할 수 있도록 하기 위한 언어
  • 사용자와 DBMS 간의 인터페이스를 제공
-- SELECT 데이터 조회
SELECT *
FROM 테이블명1
WHERE 컬럼명1 > 10;
-- INSERT 데이터 삽입
INSERT INTO 테이블명1 (컬럼명1, 컬럼명2)
VALUES (20, '내용');
-- UPDATE 데이터 수정
UPDATE 테이블명1
SET 컬럼명2 = '내용수정'
WHERE 컬럼명1 = 10;
-- DELETE 데이터 삭제
DELETE FROM 테이블명1 WHERE 컬럼명1 = 10;

 

⭐ DCL(Data Control Language: 데이터 제어어)

  • 무결성(Integrity), 보안 및 권한 제어, 데이터 회복 등을 하기 위한 언어
  • 데이터를 보호하고 데이터를 관리하는 목적으로 사용
COMMIT : 트랜잭션의 변경내용을 최종 반영한다고 결정

ROLLBACK : 트랜잭션의 변경내용을 모두 취소하고 이전상태로 되돌림

GRANT : 데이터베이스 사용자에게 권한 부여

REVOKE : 데이터베이스 사용자에게 권한 취소

 

 

✅ 트랜잭션 Transaction?

  • 데이터베이스에서 하나의 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위
  • 데이터베이스의 상태를 변화시키기 위해 수행하는 작업의 단위

 

 

'컴공스러운 공부' 카테고리의 다른 글

트랜잭션(Transaction)이란?  (0) 2022.04.13
데이터 모델이란?  (0) 2022.04.12