DDL은 데이터 정의어로 DB 구조, 데이터 형식, 접근 방식 등DB를 구축하거나 수정할 목적으로 사용하는 언어이다.
📍ex)
• '근무지번호'는 <근무지>테이블에서 '근무지번호'를 참조하는 외래키
• <근무지> 테이블에서 '근무지번호'가 삭제되면 <사원> 테이블의 '근무지번호'도 삭제됨
① CRATE TABLE 사원
② (사원번호 NUMBER(4) PRIMARY KEY,
③ 사원명 VARCHAR(10),
④ 근무지번호 NUMBER(2) FOREIGN KEY REFERENCES 근무지
⑤ ON DELETE CASCADE);
① 생성한 테이블의 이름은 사원
② '사원번호' 속성은 숫자 4자리 이며, 기본키
③ '사원명' 속성은 문자 10자리
④ '근무지번호'는 숫자 2자리이며, <근무지> 테이블의 '근무지번호'를 참조하는 외래키
⑤ <근무지> 테이블에서 '근무지번호'가 삭제되면 <사원> 테이블의 '근무지번호'도 삭제됨
📍ex) <CC>
뷰를 정의하는 SQL문 작성
① CREATE VIEW CC(ccid, ccname, instname)
② AS SELECT Course.id, Course.name, Instructor.name
③ FROM Course, Instructor
④ WHERE Course.instructor = Instructor.id;
① <CC>
뷰는 'ccid', 'ccname', 'instname' 속성을 가짐
② <Course>
테이블의 'id', 'name'과 <Instructor>
테이블의 'name'속성을 사용
③ <Course>
와 <Instructor>
릴레이션을 이용
④ <Course>
의 'instructor' 속성 값과 <Instructor>
의 'id' 속성이 같은 자료에 대한 view를 정의
📍ex) <student>
테이블을 참고하여 'name'속성으로 'idx_name' 이라는 인덱스를 생성하는 SQL 작성
CREATE INDEX idx_name ON student(name);
<학생>
테이블에 20자의 가변길이를 가진 '주소' 속성을 추가하는 SQL 작성ALTER TABLE 학생 [ADD:ALTER|DROP COLUM] 주소 VARCHAR(20);
DROP VIEW 학생 [CASECADE:RESTRICT];
참고,
길벗알앤디. 『정보처리기사 실기 단기완성』. 길벗. 2023.