DDL - CREATE TABLE
DDL(Data Define Language, 데이터 정의어)
[ 형식 ]
CREATE TABLE 테이블명 ( 속성명 데이터_타입[DEFAULT 기본값] [NOT NULL]. ...
[, PRIMARY KEY(기본키_속성명, ...)]
[, UNIQUE(대체키_속성명, ...)]
[, FOREIGN KEY(외래키_속성명, ...)]
[REFERENCES 참조테이블(기본키_속성명, ...)]
[ON DELETE옵션]
[ON UPDATE옵션]
[, CONSTRAINT 제약조건명][CHECK (조건식)] );
- DB구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어
- DDL은 번역한 결과가 데이터 사전(Data Dictionary)이라는 특별한 파일에 여러 개의 테이블로써 저장
- DDL에는 CREATE SCHEMA, CREATE DOMAIN, CREATE TABLE, CREATE VIEW, CREATE INDEX, ALTER TABLE, DROP 등이 있다.
DDL - CREATE VIEW
뷰(View)를 정의하는 명령문
[ 형식 ]
CREATE VIEW 뷰명(속성명,,,)
AS SELECT ~
[ FROM ~ WHERE ~];
- SELECT문을 서브 쿼리로 사용해서 결과를 뷰로 생성가능
- 서브 쿼리인 SELECT문에는 UNION이나 ORDER BY절을 사용 불가능
- 속성명을 기술하지 않으면 SELECT문의 속성명이 자동으로 사용된다.
DDL - ALTER TABLE
테이블에 대한 정의를 변경하는 명령문
[ 형식 ]
ALTER TABLE 테이블명 ADD 속성명 데이터_타입[DEFAULT '기본값'];
ALTER TABLE 테이블명 ALTER | MODIFY 속성명 [SET DEFAULT '기본값'];
ALTER TABLE 테이블명 DROP COLUMN 속성명[CASCADE];
- ADD : 새로운 속성(열)을 추가할 때 사용
- ALTER | MODIFY : 특정 속성의 정의를 변경할 때 사용
- DROP COLUMN : 특정 속성을 삭제할 때 사용
DDL - DROP TABLE
기본 테이블을 제거하는 명령문
[ 형식 ]
DROP TABLE 테이블명 [CASCADE | RESTRICTED];
- CASCADE : 제거할 요소를 참조하는 다른 모든 개체를 함께 제거함. 즉, 주 테이블의 데이터 제거 시 각 외래키와 관계를 맺고 있는 모든 데이터를 제거하는 참조 무결성 제약 조건을 설정하기 위해 사용
- RESTRICTED : 다른 개체가 제거할 요소를 참조중일때는 제거를 취소함.
DCL - GRANT / REVOKE
DCL(Data Control Language, 데이터 제어어)
- 데이터의 보안, 무결성, 회복, 병행 제어 등을 정의하는데 사용하는 언어
- DCL은 데이터베이스 관리자(DBA)가 데이터를 관리를 목적으로 사용
- DCL에는 GRANT, REVOKE, COMMIT, ROLLBACK, SAVEPOINT 등이 있다.
GRANT / REVOKE
데이터베이스 관리자가 데이터베이스 사용자에게 권한을 부여하거나 취소하기 위한 명령어
[ 형식1 ] - 사용자등급 지정 및 해제
GRANT 사용자등급 TO 사용자_ID_리스트[IDENTFIED BY 암호];
REVOKE 사용자등급 FROM 사용자_ID_리스트;
[ 형식 2 ] - 테이블 및 속성에 대한 권한부여 및 취소
GRANT 권한_리스트 ON 개체 TO 사용자[WITH GRANT OPTION];
REVOKE [GRANT OPTION FOR] 권한_리스트 ON 개체 FROM 사용자[CASCADE];
- GRANT : 권한 부여를 위한 명령어
- REVOKE : 권한 취소를 위한 명령어
- 권한 종류 : ALL(*), SELECT, INSERT, DELETE, UPDATE, ALTER 등
- WITH GRANT OPTION : 부여받은 권한을 다른 사용자에게 다시 부여할 수 있는 권한을 부여함
- GRANT OPTION FOR : 다른 사용자에게 권한을 부여할 수 있는 권한을 취소함
- CASCADE : 권한 취소 시 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연쇄적으로 취소함.
COMMIT / ROLLBACK / SAVEPOINT
COMMIT | 트랙젝션이 성공적으로 끝나면 DB가 새로운 일관성(Consistency)상태를 가지기 위해 변경된 모든 내용을 DB에 반영하여야하는데, 이때 사용하는 명령어 |
ROLLBACK | 아직 COMMIT되지 않은 변경된 모든 내용들을 취소하고 DB를 이전 상태로 되돌리는 명령어 |
SAVEPOINT | 트랜잭션 내에 ROLLBACK할 위치인 저장점을 지정하는 명령어 |
DML - 삽입,삭제,갱신문
DML(Data Manipulation Language, 데이터 조작어)
- 데이터베이스 사용자가 응용 프로그램이나 질의어를 통해 저장된 데이터를 실질적으로 관리하는데 사용되는 언어
- DML에는 SELECT, INSERT, DELETE, UPDATE 등이 있다.
삽입문(INSERT INTO ~ ) : 기본 테이블에 새로운 튜플 삽입 |
INSERT INTO 테이블명(속성명1,속성명2,....) VALUES(데이터1,데이터2,....); |
삭제문(DELETE FROM ~ ) : 기본 테이블에 있는 튜플들 중에서 특정 튜플 삭제 |
DELETE FROM 테이블명 [ WHERE 조건 ]; |
갱신문(UPDATE ~ SET ~ ) : 기본 테이블에 있는 튜플들 중에서 특정 튜플 내용 변경 |
UPDATE 테이블명 SET 속성명 = 데이터[속성명 = 데이터] [ WHERE 조건 ]; |
DML - SELECT
[ 형식 ]
SELECT [PREDICATE] [테이블명] 속성명 [AS 별칭][ 그룹함수(속성명) [AS 별칭]
FROM 테이블명 [ ,테이블명]
[WHERE 조건]
[GROUP BY 속성명,속성명,....]
[HAVING 조건]
[ORDER BY 속성명 [ASC|DESC]];
- PREDICATE : 불러올 튜플 수를 제한할 명령어를 기술 ( ALL, DISTINCT, DISTINCTROW )
- AS : 속성 및 연산의 이름을 다른 제목으로 표시하기 위해 사용
- GROUP BY절 : 특정 속성을 기준으로 그룹화하여 검색할 때 그룹화 할 속성을 지정
- HAVING절 : GROUP BY와 함께 사용되며, 그룹에 대한 조건을 지정
- ORDER BY절 : 특정 속성을 기준으로 정렬 검색시 사용 ( ASC : 오름차순, DESC : 내림차순 )
* SELECT문 실행 작동순서
= FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> DISTINCT -> ORDER BY
하위 질의
조건절에 주어진 질의를 먼저 수행하여 그 검색 결과를 조건절의 피연산자로 사용
- 예시를 많이 보는것이 좋음
728x90
반응형
'정보처리기사 > 실기고사 이론정리' 카테고리의 다른 글
[Chapter 10] ★ 응용 SW 기초 기술 활용 [ 운영체제 편 ] ★ (0) | 2020.10.15 |
---|---|
[Chapter 9] 소프트웨어 개발 보안 구축 (0) | 2020.10.14 |
[Chapter 7] 애플리케이션 테스트 관리 (0) | 2020.10.08 |
[Chapter 6] 화면 설계 (0) | 2020.10.06 |
[chapter 5] ★ 서버 프로그래 구현 ★ (0) | 2020.10.05 |