이렇게 하면, T_BOARD의 NO번 ROW가 삭제되면, 자동으로 T_BOARD_FILE의 해당 ROW가 삭제된다.
-- 첨부파일 테이블 t_board_file 생성 -- CREATE TABLE T_BOARD_FILE( NO NUMBER(5) PRIMARY KEY, BOARD_NO NUMBER(5) NOT NULL, FILE_ORI_NAME VARCHAR2(300), FILE_SAVE_NAME VARCHAR2(300), FILE_SIZE NUMBER(10), CONSTRAINT T_BOARD_FILE_BOARD_NO_FK FOREIGN KEY(BOARD_NO) REFERENCES T_BOARD(NO) ON DELETE CASCADE ); CREATE SEQUENCE SEQ_T_BOARD_FILE_NO NOCACHE;
아래는, DELETE CASCADE 제약조건이 없던 테이블에 추가하는 방법.
-- 첨부파일 테이블 t_board_file 생성 -- CREATE TABLE T_BOARD_FILE( NO NUMBER(5) PRIMARY KEY, BOARD_NO NUMBER(5) NOT NULL, FILE_ORI_NAME VARCHAR2(300), FILE_SAVE_NAME VARCHAR2(300), FILE_SIZE NUMBER(10), CONSTRAINT T_BOARD_FILE_BOARD_NO_FK FOREIGN KEY(BOARD_NO) REFERENCES T_BOARD(NO) ); CREATE SEQUENCE SEQ_T_BOARD_FILE_NO NOCACHE; ALTER TABLE T_BOARD_FILE DROP CONSTRAINT T_BOARD_FILE_BOARD_NO_FK; ALTER TABLE T_BOARD_FILE ADD CONSTRAINT T_BOARD_FILE_BOARD_NO_FK FOREIGN KEY(BOARD_NO) REFERENCES T_BOARD(NO) ON DELETE CASCADE;
'데이터베이스 > ORACLE' 카테고리의 다른 글
[ORACLE] ORACLE XE 11 express 설치 (0) | 2020.07.30 |
---|---|
[ORACLE] 오늘은 hh24:mi:ss 이전 기간은 yyyy-mm-dd 나타내기 (0) | 2020.07.23 |
[ORACLE] SQL 오류: ORA-00904: 부적절한 식별자 (delete 문) (0) | 2020.07.22 |
[ORACLE] 테이블 목록 조회하기 (0) | 2020.07.19 |
[ORACLE] t_board 테이블 생성 및 Insert / 답글 기능을 위한 변경 사항 (0) | 2020.07.19 |