MyCloud

Oracle DDL, DML, DCL 본문

Knowledge/Database

Oracle DDL, DML, DCL

Swalloow 2016. 6. 6. 21:58



Oracle DDL


DDL 이란, 데이터베이스를 정의하는 언어를 말합니다.

데이터를 생성하거나 수정하거나 삭제할 수 있으며,

NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK 등의 제약조건을 설정할 수 있습니다.



1. 테이블 생성

CREATE TABLE book (

bookno NUMBER(5),

title VARCHAR2(50),

author VARCHAR2(10),

pubdate DATE

);


2. 테이블 수정

// 컬럼 추가

ALTER TABLE book ADD (pubs VARCHAR2(50));


// 컬럼 수정

ALTER TABLE book MODIFY (title VARCHAR2(100));


// 컬럼 삭제

ALTER TABLE book DROP author;


3. 테이블 삭제

// 테이블 삭제

DROP TABLE book;


// 데이터 삭제

TRUNCATE TABLE book;








Oracle DML


DML 이란, 정의된 데이터베이스에 입력된 레코드를

조회하거나 수정하거나 삭제하는 등의 역할을 하는 언어를 말합니다.



1. SELECT 문

SELECT * FROM emp;

SELECT ename FROM emp;

SELECT ename, job FROM emp;


2. INSERT 문

INSERT INTO dept VALUES (777, 'MARKETING', NULL);

INSERT INTO dept (dname, deptno) VALUES ('MARKETING', 777);


3. UPDATE 문

// 조건을 만족하는 레코드를 변경

UPDATE emp SET sal = sal + 100, comm = 0 WHERE deptno = 10;


// 조건이 생략되면 모든 레코드에 적용

UPDATE emp SET sal = sal * 1.1


4. DELETE 문

// 조건을 만족하는 레코드 삭제

DELETE FROM emp WHERE ename = 'SCOTT';


// 조건이 생략되면 모든 레코드 삭제

DELETE FROM emp;








Oracle DCL


DCL 이란, 데이터베이스에 접근하거나

객체에 권한을 주는 등의 역할을 하는 언어를 말합니다.



1. GRANT / REVOKE 문

// 시스템 권한

GRANT create session TO user1;

REVOKE create session FROM user1;


// 스키마 객체 권한

GRANT select ON emp TO user1;

REVOKE select ON emp FROM user1;


2. ROLE 문

// ROLE 생성, 관리

CREATE ROLE reviewer;

GRANT select any table TO reviewer;

GRANT create session, resource TO reviewer;


// 특정 ROLE을 사용자에게 GRANT / REVOKE

GRANT reviewer TO user3;



'Knowledge > Database' 카테고리의 다른 글

Oracle SQL Query  (0) 2016.06.07
Oracle DB, SQL Developer 설치  (0) 2016.04.08
관계형 데이터베이스의 구조  (0) 2016.04.01
데이터베이스와 DBMS  (2) 2016.03.27
Comments