DDL이란? DML이란? DCL이란?
안녕하세요. 곰 옥수수입니다. ₍ᵔ๑・ᴥ・ᵔ₎
오늘은 DDL, DML, DCL에 대해 간략하게 알아보도록 하겠습니다.
지금은 간략하게 정리하고 다음에 세부적으로 정리해보도록 할게요!
DDL이란?
▶데이터정의어(Data Definition Language)
- 데이터 정의어는 데이터를 정의하는 언어로서 '데이터를 담는 상자를 정의하는 언어' 이다.
- 테이블과 같은 데이터 구조를 정의하는데 사용되며 생성, 변경, 삭제 하는데 사용되는 언어이다.
▶DDL의 대상
도메인, 스키마, 테이블, 뷰, 인덱스가 있다.
도메인(domain): 하나의 속성을 가질 수 있는 원자값들의 집합
스키마(Schema): 데이터베이스의 구조, 제약조건 등의 정보를 담고있는 기본적인 구조
테이블(Table): 데이터 저장 공간
뷰(View): 하나 이상의 물리 테이블에서 유도되는 가상 테이블
인덱스(Index): 빠른 검색을 위한 데이터 구조
▶DDL의 명령어
구분 | DDL명령어 | 설명 |
생성 | CREATE | 데이터베이스 오브젝트를 생성하는 명령어 (테이블, 뷰...) |
수정 | ALTER | 데이터베이스 오브젝트를 수정하는 명령어 |
삭제 | DROP | 데이터베이스 오브젝트를 삭제하는 명령어 |
TRUNCATE | 데이터베이스 오브젝트의 내용을 삭제하는 명령어 예) 테이블 자체 삭제가 아닌 내용(데이터)만 삭제한다. |
테이블 생성 예)
CREATE TABLE 테이블명(
번호 VARCHAR2(10) PRIMARY KEY,
이름 VARCHAR2(10) NOT NULL,
성별 CHAR(1) CHECK (성별 = 'M' OR 성별 = 'F'),
입사일 DATE DEFAULT SYSDATE
);
DML
▶데이터 조작어(DML: Data Manipulation Language)
데이터 조작어는 데이터베이스에 저장된 자료들을 입력, 수정, 삭제, 조회하는 조작 언어이다.
▶DML명령어
구분 | DML명령어 | 설명 |
조회 | SELECT | 테이블 내 컬럼에 저장된 데이터 조회 |
삽입 | INSERT | 테이블 내 컬럼에 데이터 추가 |
갱신 | UPDATE | 테이블 내 컬럼에 저장된 데이터 수정 |
삭제 | DELETE | 테이블 내 컬럼에 저장된 데이터 삭제 |
▶SELECT 명령어
SELECT명령령어는 구분절이 있는데 이를 정확히 순서에 맞게 사용해야한다.
그렇지 않으면 에러가 발생한다.
순서 :
1. SELECT절 : 테이블에서 출력할 컬럼을 명시하기 위해 사용
2. FROM절 : 질의에 의해 검색될 데이터들을 포함하는 테이블 명을 기술
3. WHERE절 : 검색할 조건(비교, 범위, 집합, 패턴, NULL, 복합조건)
4. GROUP BY절: 속성값을 그룹으로 분류하고자 할 때 사용
5. HAVING절 : GROUP BY에 의해 분류한 후 그룹에 대한 조건 지정 시 사용
6. ORDER BY 절: 조회된 데이터의 값을 정렬하고자 할때( ASC:오름차순, DESC:내림차순)
▶WHERE절 문법
비교, 범위, 집합, 패턴, NULL, 복합조건 이 있다.
구분 | 연산자 | 구분 | 연산자 |
비교 | =, !=, <, <=, >, >=, <> | 패턴 | 컬럼 LIKE 패턴 % : 0개이상의 문자열과 일치 [] : 1개의 문자와 일치 [^]: 1개의 문자와 불일치 _ : 특정위치의 1개의 문자와 일치 |
범위 | 컬럼명 BETWEEN a AND b (a>=컬럼 AND 컬럼<= b) |
NULL | 컬럼 IS NULL 컬럼 IS NOT NULL |
집합 | 컬럼 IN(값1, 값2, ...) 컬럼 NOT IN(값1, 값2, ..) |
복합조건 | 조건1 AND 조건2 조건1 OR 조건2 NOT 조건1 |
이것 왜에도 JOIN, 서브쿼리, 집합연산자도 있지만, 지금은 간단하게 정리하고 다음에 세부적으로 더 정리할 것이다.
DCL
▶데이터제어어(DCL: Data Control Language)
데이터 제어어는 데이터베이스 관리자가 데이터 보안, 무결성 유지, 병행제어, 회복을 위해 관리자(DBA)가 사용하는 제어용 언어이다.
▶DCL 명령어
구분 | DCL명령어 | 설명 |
GRANT | 사용 권한 부여 | 관리자(DBA)가 사용자에게 데이터베이스에 대한 권한을 부여하는 명령어 |
REVOKE | 사용 권한 회수 | 관리자(DBA)가 사용자에게 부여했던 권한을 회수하기 위한 명령어 |
후.. 오늘도 열심히 정리해 봤어요. DDL, DML, DCL을 한번에 많은 양을 정리할 수는 없기에 간략히만 정리했어요.
다음에는 파트를 나눠서 좀 더 많은 예제와 명령어들로 정리해 봐야겠네요!
저도 정리하면서 도움이 됐네요! ୧(๑•̀ᗝ•́)૭
다들 즐거운 하루되세오~~옥수수~ (。•̀ᴗ-)✧
끄으~~읏
'프로그래밍 > SQL' 카테고리의 다른 글
[SQL] WITH 에 대해서 정리해보자. (0) | 2023.01.15 |
---|---|
[SQL] 서브쿼리(Subquery) 와 그 사용법 정리 (0) | 2023.01.14 |
[SQL] Join 개념과 Join사용법 정리(Inner Join, Outer Join, Cross Join, Self Join ... ) (0) | 2023.01.12 |
[SQL] GROUP BY와 HAVING설명과 사용법 + SELECT 명령어 문법 순서와 실행 순서 (0) | 2023.01.09 |
[SQL] SQL의 중복 데이터 제거인 Distinct 와 사용법! (0) | 2022.12.27 |
댓글