본문 바로가기
Database

[SQLD] DBMS

by pin9___9 2022. 9. 2.
728x90

DBMS 데이터 언어 - DDL, DML, DCL, TCL의 정의


DML - (Data Mnipulation Language, 데이터 조작어)


SELECT : 데이터베이스에서 데이터를 검색

  • ALL : 기본 옵션이므로 별도로 지정하지 않아도 되며, 중복되는 데이터가 있더라도 모두 출력
  • DISTINCT : 중복된 데이터가 있는 경우 1건만 출력

 

INSERT : 테이블에 데이터를 삽입

 

UPDATE : 테이블 내의 기존 데이터를 수정

 

DELETE : 테이블에서 데이터를 삭제

  • 테이블 전체 데이터를 삭제하는 경우, 시스템 활용 측면에서 삭제된 데이터를 로그로 저장
  • DDL 의 DROP,TRUNCATE 와 다르게 저장된 로그가 있어 ROLLBACK사용 가능

 

MERGE : UPSERT 작업( INSERT 또는 UPDATE )

  • 데이터 테이블에 존재하지 않으면 INSERT, 존재하면 UPDATE를 수행

 

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

  • 데이터베이스 구조 또는 스키마(schema)를 정의하는데 사용된다.
  • DB 테이블에 직접 영향을 미치기 때문에 DDL 명령어를 입력하는 순간, 작업이 즉시 AUTO COMMIT 된다.

CREATE : 데이터베이스의 객체를 생성

 

ALTER : 데이터베이스의 구조를 변경

 

DROP : 데이터베이스의 객체를 삭제 (테이블의 모든 데이터와 구조를 삭제)

 

RENAME : 데이터베이스의 객체 이름을 변경

 

TRUNCATE : 테이블에 할당된 모든 공간을 포함하여 모든 레코드를 제거 ( 테이블 객체의 저장 공간 재사용 가능 )

 

 

DCL - (Data Control Language, 데이터 제어 언어)

  • 데이터베이스에 권한 부여
  • DDL 과 같이 DB 테이블에 직접 영향을 미치기 때문에 DCL 명령어를 입력하는 순간, 작업이 즉시 AUTO COMMIT 된다.

GRANT : 데이터베이스에 대한 사용자의 액세스 권한을 제공 ( 특정 사용자만 특정 작업을 할 수 있도록 지정 가능 )

 

REVOKE : GRANT 명령으로 주어진 액세스 권한을 철회

 

TCL - (Transaction Control Language, Transaction 제어 언어)

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

COMMIT : 트렌잭션의 작업 결과를 저장 반영 ( 트랜젝션 완료 )

 

ROLLBACK : DB를 마지막 COMMIT 된 시점의 상태로 복원 ,데이터변경 내용은 논리적인 트랜잭션으로 그룹화 가능

 

SAVEPOINT : 저장점을 정의하면 롤백할 때 트랜잭션에 포함된 전체 작업을 롤백하는 것이 아니라 저장점까지 트랜잭션 일부만 롤백할 수 있다.

 

 

728x90

댓글