cascade 적용 코드 -> 실제 사용함.

drop table attach;
drop table reply_a;
drop table article;
drop table board;



/* 게시글 */
CREATE TABLE ARTICLE (
ARTICLECODE VARCHAR2(200) NOT NULL, /* 게시글코드 */
BOARDCODE VARCHAR2(200) NOT NULL, /* 게시판분류 */
ARTICLETITLE VARCHAR2(200), /* 제목 */
ARTICLECONTENT CLOB, /* 내용 */
ARTICLEDATE DATE NOT NULL, /* 등록날짜 */
ARTICLEDELETE VARCHAR2(200) NOT NULL, /* 삭제여부 */
ARTICLEUPPER VARCHAR2(200), /* 상위게시글코드 */
ID VARCHAR2(200), /* 사용자아이디 */
    allparentcode VARCHAR2(200)
    
);

ALTER TABLE ARTICLE
ADD
CONSTRAINT PK_ARTICLE
PRIMARY KEY (
ARTICLECODE
);




/* 댓글 */
CREATE TABLE reply_a (
REPLYCODE VARCHAR2(200) NOT NULL, /* 댓글코드 */
ARTICLECODE VARCHAR2(200) NOT NULL, /* 게시글코드 */
REPLYCONTENT CLOB NOT NULL, /* 내용 */
REPLYDATE DATE NOT NULL, /* 등록날짜 */
REPLYDELETE VARCHAR2(200) NOT NULL /* 삭제여부 */
);

ALTER TABLE reply_a
ADD
CONSTRAINT PK_replya
PRIMARY KEY (
REPLYCODE
);

/* 첨부파일 */
CREATE TABLE attach (
FILECODE VARCHAR2(200) NOT NULL, /* 첨부파일코드 */
ARTICLE_CODE VARCHAR2(200) NOT NULL, /* 게시글코드 */
ATTACHNAME VARCHAR2(500) /* 첨부파일명 */
);

ALTER TABLE attach
ADD
CONSTRAINT PK_attach
PRIMARY KEY (
FILECODE
);

/* 게시판 */
CREATE TABLE BOARD (
BOARDCODE VARCHAR2(200) NOT NULL, /* 게시판분류 */
STATUS VARCHAR2(200) NOT NULL, /* 비활성화여부 */
          boardname VARCHAR2(200) NOT NULL
);

ALTER TABLE BOARD
ADD
CONSTRAINT PK_BOARD
PRIMARY KEY (
BOARDCODE
);

ALTER TABLE ARTICLE
ADD
CONSTRAINT FK_ARTICLE_TO_ARTICLE
FOREIGN KEY (
ARTICLEUPPER
)
REFERENCES ARTICLE (
ARTICLECODE
) on delete cascade ;

ALTER TABLE ARTICLE
ADD
CONSTRAINT FK_BOARD_TO_ARTICLE
FOREIGN KEY (
BOARDCODE
)
REFERENCES BOARD (
BOARDCODE
) on delete cascade ;

ALTER TABLE reply_a
ADD
CONSTRAINT FK_ARTICLE_TO_replya
FOREIGN KEY (
ARTICLECODE
)
REFERENCES ARTICLE (
ARTICLECODE
) on delete cascade ;

ALTER TABLE attach
ADD
CONSTRAINT FK_ARTICLE_TO_attach
FOREIGN KEY (
ARTICLE_CODE
)
REFERENCES ARTICLE (
ARTICLECODE
) on delete cascade ;
        


create sequence article_sequence increment by 1 start with 1; 
create sequence board_sequence increment by 1 start with 1; 
create sequence reply_sequence increment by 1 start with 1; 
create sequence attach_sequence increment by 1 start with 1; 
        

댓글