본문 바로가기
SQL

관리 구문 DML과 TCL

by 피갓자 2025. 3. 10.

관리 구문 DML과 TCL
관리 구문 DML과 TCL

DML

데이터 조작 언어(DML, Data Manipulation Language)로 DDL에서 정의한 대로 데이터를 삽입하고, 삽입된 데이터를 수정, 삭제, 조회하는 명령어

INSERT

데이터를 삽입할 때 사용하는 명령어

INSERT INTO 테이블명(컬럼명1, 컬럼명2, ...)
VALUES (데이터1, 데이터2, ...);
  • 속성과 데이터 개수, 데이터 타입이 일치해야 함
  • 속성명은 생략 가능
  • 속성의 타입이 숫자이면 데이터는 따옴표를 붙이지 않아도 되며, 문자열이면 따옴표를 붙여야 함

UPDATE

데이터를 수정할 때 사용하는 명령어

UPDATE 테이블명
SET 컬럼명 = 데이터, ...
WHERE 조건;
  • WHERE 절을 통해 어떤 조건이 만족할 때만 특정 컬럼의 값을 수정하는 용도로 자주 사용됨

DELETE

데이터를 삭제할 때 사용하는 명령어

DELETE FROM 테이블명
WHERE 조건;
  • 모든 레코드를 삭제할 때는 WHERE 절 없이 DELETE만 사용
  • 레코드를 삭제해도 테이블 구조는 남아 있어서 디스크에서 테이블을 완전히 삭제하는 DROP 명령과는 다름

MERGE

새로운 데이터를 삽입하거나 삽입된 데이터에 대한 변경 작업을 한 번에 할 수 있도록 해주는 명령어

MERGE
 INTO 타겟 테이블명
USING 비교 테이블명
   ON 조건
WHEN MATCHED THEN
     UPDATE
        SET 컬럼명 = 새로운 데이터[, 컬럼명 = 새로운 데이터, ...]
WHEN NOT MATCHED THEN
     INSERT [(컬럼명1, 컬럼명2, ...)]
     VALUES (데이터1, 데이터2, ...);

 

TCL

트랜잭션 제어 언어(TCL, Transaction Control Language)로 트랜잭션의 결과를 허용하거나 취소하는 명령어

트랜잭션의 특성

원자성(Atomicity) : 트랜잭션을 구성하는 연산 전체가 모두 정상적으로 실행되거나 모두 취소되어야 함

일관성(Consistency) : 시스템이 가지고 있는 고정요소는 트랜잭션 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야 함

격리성(Isolation) : 동시에 실행되는 트랜잭션들이 서로 영향을 미치지 않아야 함

영속성(Durability) : 성공이 완료된 트랜잭션의 결과는 영속적으로 데이터베이스에 저장되어야 함

  • COMMIT : 트랜잭션을 메모리에 영구적으로 저장하는 명령어
  • ROLLBACK : 트랜잭션 내역을 저장 무효화시키는 명령어
  • SAVEPOINT : ROLLBACK을 위한 시점을 지정하는 명령어

'SQL' 카테고리의 다른 글

관리 구문 DDL과 DCL  (0) 2025.03.11
SQL 활용 기타 기법  (0) 2025.03.09
SQL 활용 그룹 함수와 윈도우 함수  (0) 2025.03.08
SQL 활용 서브쿼리와 집합 연산자  (0) 2025.03.07
SQL 기본 SELECT 문 조건 절  (0) 2025.03.06