[정처기] SQL 응용

Yuri Lee·2023년 4월 3일
0

1) 개념

DDL (데이터 정의어)

DB를 구축하거나 구정할 목적으로 사용하는 언어
: CREATE, ALTER, DROP

2) 기출문제

1. 컬럼 추가

(ALTER) TABEL 학생 (ADD) VARCHAR(20);

2. 인덱스 생성 - 속성

CREATE INDEX 'name_idx' ON student(name);
CREATE INDEX '직원_NAME' ON 직원(이름);

2-1. 인덱스 정의 - 중복 불허/오름차순

CREATE UNIQUE INDEX 'Stud_idx' ON student(ssn asc);

3. 테이블 정의

  • CONSTRAINT
CREATE TABLE patient(id VARCHAR(5) PRIMARY KEY, name VARCHAR(10), sex VARCHAR(1), phone VARCHAR(20), 
CONSTRAINT sex_ck CHECK (sex='f' or sex='m'), 
CONSTRAINT id_fk FOREIGN KEY(id) REFERENCES doctor(doc_id));
  • 외래키 옵션
CREATE TABLE INSTRUCTOR(NAME VARCHAR(15) NOT NULL PRIMARY KEY, 
DEPT VARCHAR(15), FOREIGN KEY(DEPT) REFERENCES DEPARTMENT(DEPT)
ON DELETE SET NULL ON UPDATE CASCADE;

4. 속성 추가(컬럼 추가)

ALTER TABLE PATIENT ADD JOB VARCHAR(20);

5. 뷰 정의

CREATE VIEW CC(CCID, CCNAME, INSTNAME) 
AS SELECT COURSE.ID, COURSE.NAME, INSTRUCTOR.NAME
FROM COURSE, INSTRUCTOR
WHERE COURSE.INSTRUCTOR = INSTRUCTOR.ID;

6. 도메인 생성 - 기본값/제약조건

CREATE DOMIAN 직위 VARCHAR(10)
DEFAULT '사원'
CONSTRAINT VALID-직위 CHECK
	(VALUE IN('사원', '과장', '부장', '이사', '사장'));
profile
개발자 이유리

0개의 댓글