- [MySQL] 32. DML,DDL,DCL2024년 06월 11일
- Song hyun
- 작성자
- 2024.06.11.:05
728x90반응형[MySQL] 32. DML,DDL,DCL
1. DML (Data Manipulation Language)
2. DDL (Data Definition Language)
3. DCL (Data Control Language)
1. DML이란?
(1) DML(Data Manipulation Language)는 데이터 조작어를 의미한다. 데이터베이스에 들어 있는 데이터를 조회하거나, 검색하기 위한 명령어들의 총칭이다.
(2) DML에 속하는 것은 SELECT,INSERT,UPDATE,DELETE가 있다.
2. DDL이란?
(1) DDL(Data Definition Language)는 데이터 정의어를 의미한다. 테이블과 같은 데이터 구조를 정의하는 데 사용되는 명령어들로 (생성, 변경, 삭제, 이름 변경) 데이터 구조와 관련된 명령어들을 말한다.
(2) DDL에 속하는 명령어로는 CREATE,ALTER,DROP,RENAME,TRUNCATE가 있다.
(3) TRUNCATE 명령어는 SQL에서 사용하는 명령어로, 테이블의 모든 데이터를 빠르고 효율적으로 삭제하는 데 사용된다.
TRUNCATE의 특징
- 속도: **TRUNCATE**는 데이터를 삭제할 때 로그를 거의 생성하지 않거나 매우 적게 생성하기 때문에, DELETE 명령어보다 훨씬 빠르다. 이는 특히 큰 테이블에서 유용하다.
- 데이터베이스 로그: **TRUNCATE**는 **DELETE**와 달리 로우(행) 단위로 로그를 기록하지 않고, 테이블을 재설정하는 데 필요한 최소한의 정보만을 로그로 기록합니다. 이로 인해 매우 빠르게 수행된다.
- 공간 재사용: TRUNCATE 명령은 테이블의 공간을 삭제하지 않고 비워서 재사용 가능하게 한다. 이는 공간을 효율적으로 관리할 수 있게 해준다.
- 자동 증가 필드 초기화: **TRUNCATE**는 자동 증가(AUTO_INCREMENT) 속성이 설정된 필드의 카운터를 초기화한다. 이는 DELETE 명령어에서는 일어나지 않는 특징입니다.
- 제약 조건: 일부 시스템에서는 **TRUNCATE**가 외래 키 제약 조건을 가진 테이블에서 사용할 수 없다. 이 경우, 대신 DELETE 명령어를 사용해야 할 수도 있다.
3. DCL이란?
(1) DCL (Data Control Language)는 데이터 제어어를 의미한다.
(2) 이는 데이터베이스에 접근하고, 객체들을 사용하도록 권한을 주고, 회수하는 명령어들을 말한다.
(3) DCL에 해당하는 명령어는 GRANT,REVOKE가 있다.
728x90반응형'MySQL > 기본 개념 및 지식' 카테고리의 다른 글
[MySQL] 36. Self Join (0) 2024.06.11 [MySQL] 31. 보안 고려 사항 및 Localhost (0) 2024.06.10 [MySQL] 30. MySQL 계정 생성 및 권한 (1) 2024.06.10 [MySQL] 29. SQL 쿼리의 일반적인 작동 순서 (2) (0) 2024.06.10 [MySQL] 28. SQL 쿼리의 일반적인 처리 순서 (1) (1) 2024.06.10 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)