Untitled

Anonymous
plain_text
02/19/2026 5:15 AM
2.0 KB
16
Indexable
CREATE TABLE PRODUCTION_COMPANY (
    COMPANY_ID NUMBER PRIMARY KEY,
    NAME VARCHAR2(100) NOT NULL,
    ADDRESS VARCHAR2(200)
);


CREATE TABLE MOVIE (
    MOVIE_ID NUMBER PRIMARY KEY,
    TITLE VARCHAR2(150) NOT NULL,
    RELEASE_DATE DATE,
    LENGTH_MIN NUMBER(4),
    GENRE VARCHAR2(50),
    PLOT_SUMMARY VARCHAR2(500),
    COMPANY_ID NUMBER,
    CONSTRAINT FK_MOVIE_COMPANY
        FOREIGN KEY (COMPANY_ID)
        REFERENCES PRODUCTION_COMPANY(COMPANY_ID)
        ON DELETE CASCADE
);


CREATE TABLE ACTOR (
    ACTOR_ID NUMBER PRIMARY KEY,
    NAME VARCHAR2(100) NOT NULL,
    DATE_OF_BIRTH DATE
);


CREATE TABLE DIRECTOR (
    DIRECTOR_ID NUMBER PRIMARY KEY,
    NAME VARCHAR2(100) NOT NULL,
    DATE_OF_BIRTH DATE
);


CREATE TABLE MOVIE_ACTOR (
    MOVIE_ID NUMBER,
    ACTOR_ID NUMBER,
    PRIMARY KEY (MOVIE_ID, ACTOR_ID),
    CONSTRAINT FK_MA_MOVIE
        FOREIGN KEY (MOVIE_ID)
        REFERENCES MOVIE(MOVIE_ID)
        ON DELETE CASCADE,
    CONSTRAINT FK_MA_ACTOR
        FOREIGN KEY (ACTOR_ID)
        REFERENCES ACTOR(ACTOR_ID)
        ON DELETE CASCADE
);


CREATE TABLE MOVIE_DIRECTOR (
    MOVIE_ID NUMBER,
    DIRECTOR_ID NUMBER,
    PRIMARY KEY (MOVIE_ID, DIRECTOR_ID),
    CONSTRAINT FK_MD_MOVIE
        FOREIGN KEY (MOVIE_ID)
        REFERENCES MOVIE(MOVIE_ID)
        ON DELETE CASCADE,
    CONSTRAINT FK_MD_DIRECTOR
        FOREIGN KEY (DIRECTOR_ID)
        REFERENCES DIRECTOR(DIRECTOR_ID)
        ON DELETE CASCADE
);
Editor is loading...
Leave a Comment