--1. 테이블명 : STAR_WARS(영화 정보)
-- 칼럼 : EPISODE_ID : 에피소드 아이디, 숫자 타입(5), 기본키
-- EPISODE_NAME : 에피소드에 따른 영화 제목, 가변 문자 타입(50)
-- OPEN_YEAR : 개봉 연도, 숫자 타입(4)
CREATE TABLE STAR_WARS(
EPISODE_ID NUMBER(5) CONSTRAINT SW_EPISODE_ID_PK PRIMARY KEY,
EPISODE_NAME VARCHAR2(50),
OPEN_YEAR NUMBER(4)
);
--2. 테이블명 : characters(등장인물)
-- 칼럼 : character_id : 등장인물 아이디, 숫자 타입(5), 기본키
-- character_name : 등장인물 이름, 가변 문자 타입(30)
-- master_id : 등장인물이 제다이일 경우, 마스터 아이디 값을 가짐, 숫자 타입(5)
-- role_id : 등장인물 역할 아이디, 숫자 타입(4)
-- email : 등장인물 이메일 주소, 가변 문자 타입(40)
CREATE TABLE characters(
character_id NUMBER(5) CONSTRAINT PK_CHAR_character_id PRIMARY KEY,
character_name VARCHAR2(30),
master_id NUMBER(5),
role_id NUMBER(4),
email VARCHAR2(40)
);
--3. 테이블명 : casting(등장인물과 실제 배우의 정보)
-- 칼럼 : episode_id : 에피소드 아이디, 숫자 타입(5), 기본키
-- character_id : 등장인물 아이디, 숫자 타입(5), 기본키
-- real_name : 등장인물의 실제 이름, 가변 문자 타입(30)
-- 기본키는 단 1개만 생성가능. 복합키로 생성 테이블 수준제약 구문 사용
CREATE TABLE casting(
episode_id NUMBER(5),
character_id NUMBER(5),
real_name VARCHAR2(30),
CONSTRAINT PK_CAST_ episode_character_id PRIMARY KEY (episode_id,character_id)
);