티스토리 뷰

DB/ORACLE

DDL DCL DML

0bliviat3 2023. 8. 28. 14:52

oracle의 sql문은 크게 DDL, DCL, DML 세가지로 나눌수 있다.

 

DDL : 테이블을 관리하는 명령어로 create , drop, alter 테이블 등의 명령어를 사용해

테이블의 생성, 삭제, 수정을 수행한다

 

DCL : 트랜잭션과 권한관리를 수행하는 명령어로 commit, rollback 등의 명령어를 사용해

트랙잭션을 수행하고, grant, revoke 등의 명령어를 사용해 사용자의 권한을 부여 및 회수하는 명령을 수행한다.

 

DML : 튜플을 관리하는 명령어로 튜플의 CRUD 작업 수행시 사용한다.

c : insert / r : select / u : update / d : delete

 

 

이제 각 명령어들의 세부 사용법을 정리하자면,

 

DDL

 

테이블의 생성시)

create table 테이블명 (
컬럼명1 varchar2(10) primary key, // 컬럼명 타입 제약조건 형식
컬럼명2 number not null
);

 

테이블의 수정시)

 

alter table 테이블명 add 컬럼명 타입 제약조건; // 테이블 컬럼 추가시
alter table 테이블명 modify 컬럼명 타입; // 테이블 컬럼 타입 수정시
alter table 테이블명 add check(컬럼명 in ('제한자1','제한자2')); // 테이블에 check 조건 추가시
alter table 테이블명 drop column 컬럼명; // 테이벌 컬럼 삭제시
alter table 테이블명 rename column 기존 컬럼명 to 새컬럼명 // 컬럼영 변경시

 

테이블의 삭제시)

 

drop table 테이블명

 

DCL

 

 

commit : 현재 수행된 DML문의 변경사항등에 대해 저장한다.

이때 이전에 DDL문이 수행된적이 있다면 자동으로 DDL문이 수행된 시점까지 auto commit 된다.

 

rollback : 현재 마지막으로 수행된 commit 시점으로 DML문의 수행을 복원시킨다.

역시 이전에 DDL 문이 수행되었다면 마지막 DDL문 수행시점까지 돌아간다.

 

grant : 사용자에게 권한을 부여하는 명령어 

grant dba to aaa; // aaa 라는 사용자에게 dba 라는 권한을 부여한다.

reboke : 사용자에게서 권환을 회수하는 명령어

 

 

DML

 

C : insert 튜플의 삽입

R : select 튜플의 검색

U : update 튜플의 갱신

D : delete 튜플의 삭제

 

// insert
insert into 테이블명 (컬럼명 1, 컬럼명2) values (값1, 값2); // 특정 컬럼에 값을 추가할때
insert into 테이블명 values (값1, 값2,...); // 튜플추가할때

// select
select 검색할 컬럼
from 대상 테이블
where 검색조건
group by 그룹화할 컬럼
having 그룹화할 조건
order by 정렬조건 // desc : 내림차순 , asc : 오름차순

// update
update 테이블명 set 컬럼명 = 값 where 조건 // 튜플의 값을 수정할때

// delete 
delete from 테이블명 where 조건 // 튜플 삭제

 

 

이상 명령어들에 대해 트리로 표현하면 다음과 같다.

 

 

'DB > ORACLE' 카테고리의 다른 글

무결성  (0) 2023.09.01
트리거  (0) 2023.08.31
외래키(foreign key)  (0) 2023.08.31
ERD  (0) 2023.08.30
ORACLE의 함수 생성  (0) 2023.08.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함