본문 바로가기

자격증/정보처리기사 자격증 공부

(실기) Section 102 - SQL -DDL

반응형

1. DDL(Data Define Lanuage, 데이터 정의어)

  • DDL은 DB 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어이다.
  • 번역한 결과가 데이터 사전이라는 특별한 파일에 여러 개의 테이블로 저장된다.
  • DDL의 3가지 유형

CREATE

  • SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의함.

ALTER

  • TABLE에 대한 정의를 변경하는 데 사용함.

DROP

  • SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 삭제함.

2. CREATE SCHEMA

  • CREATE SCHEMA는 스키마를 정의하는 명령문이다.
  • 표기 형식
CREATE SCHEMA 스키마명 AUTHORIZATION 사용자_id;

3. CREATE DOMAIN

  • CREATE DOMAIN은 도메인을 정의하는 명령문이다.
  • 표기 형식
CREATE DOMAIN 도메인명[AS] 데이터_타입
    [DEFALUT 기본값]
    [CONSTRAINT 제약조건명 CHECK (범위값)];
  • 데이터 타입 : SQL에서 지원하는 데이터 타입
  • 기본값 : 데이터를 입력하지 않았을 때 자동으로 입력되는 값
  • 예제 : '성별'을 '남' 또는 '여'와 같이 정해진 1개의 문자로 표현되는 도메인 SEX를 정의하는 SQL문은 다음과 같다.
  • CREATE DOMAIN SEX CHAR(1) DEFAULT '남' CONSTRAINT VALID-SEX CHECK(VALUE IN('남', '여'));

4. CREATE TABLE

  • CREATE TABLE은 테이블을 정의하는 명령문이다.
  • 표기형식
  • CREATE TABLE 테이블명 (속성명 데이터_타입 [DEFAULT 기본값] [NOT NULL], [PRIMARY KEY (기본키_속성명,),], [, UNIQUE KEY(대체키_속성명)], [FOREIGN KEY(외래키_속성명, ---)] REFERENCES 참조테이블(기본키_속성명)] ON DELETE 옵션, ON UPDATE 옵션 [CONSTRAINT 제약조건명] [CHECK (조건식)];

5. CREATE VIEW

  • CRAETE VIEW는 뷰(View)를 정의하는 명령문이다.
  • 표기형식
    CREATE VIEW 뷰명(속성명[, 속성명])] AS SELECT 문;

6. CREATE INDEX

  • CREATE INDEX는 인덱스를 정의하는 명령문이다.
  • 표기형식
CREATE [UNIQUE] INDEX 인덱스명
ON 테이블명 (속성명[ASC | DESC]) [CLUSTER];
  • UNIQUE
    • 사용된 경우 : 중복 값이 없는 속성으로 인덱스를 생성한다.
    • 생략된 경우 : 중복 값을 허용하는 속성으로 인덱스를 생성한다.
  • CLUSTER : 사용하면 인덱스가 클러스터드 인덱스로 설정됨.

7. ALTER TABLE

  • ALTER TABLE은 테이블에 대한 정의를 변경하는 명령문이다.
  • 표기형식
  • ALTER TABLE 테이블명 ADD 속성명 데이터_타입[DEFAULT '기본값'];

ALTER TABLE 테이블명 ALTER 속성명 [SET DEFAULT '기본값'];

ALTER TABLE 테이블명 DROP COLUMN 속성명 [CASCADE];


# DROP
- DROP은 스키마, 도메인, 기본 테이블, 뷰 테이블, 인덱스, 제약 조건 등을 제거하는 명령문이다.

- 표기 형식

DROP SCHEMA 스키마명 [CASCADE | RESTRICT]


- RESTRICT : 다른 개체가 제거할 요소를 참조중일 떄는 제거를 취소한다.
반응형