기능별 쿼리작성, 시퀀스 작성, 외래키 제약조건 추가
개인프로젝트 2019. 7. 18. 14:311 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | -----------------------------------작성중인 쿼리--------------------------------------------- --먼저 각 게시글과 댓글 번호를 1씩 증가시키기 위해서 고유 시퀀스들을 생성함 CREATE SEQUENCE member_bno --회원게시판(일반게시물) START WITH 1 INCREMENT BY 1 MAXVALUE 10000; CREATE SEQUENCE best_bno --회원게시판(베스트게시물) START WITH 1 INCREMENT BY 1 MAXVALUE 10000; CREATE SEQUENCE admin_bno --공지게시판 START WITH 1 INCREMENT BY 1 MAXVALUE 10000; CREATE SEQUENCE member_reply_bno --회원게시판 댓글 START WITH 1 INCREMENT BY 1 MAXVALUE 10000; CREATE SEQUENCE admin_reply_bno --공지게시판 댓글 START WITH 1 INCREMENT BY 1 MAXVALUE 10000; --게시판마다 조회수 시퀀스 작성-- CREATE SEQUENCE admin_viewcnt -- 공지게시판 조회수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; CREATE SEQUENCE member_board_viewcnt -- 회원게시판(일반게시물) 조회수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; CREATE SEQUENCE member_best_board_viewcnt -- 회원게시판(베스트게시물) 조회수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; --게시판마다 추천수 시퀀스 작성-- CREATE SEQUENCE member_board_recommend -- 회원게시판 (일반게시물) 추천수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; CREATE SEQUENCE member_best_board_recommend -- 회원게시판(베스트게시물) 추천수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; CREATE SEQUENCE member_reply_recommend -- 회원게시판 댓글 추천수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; CREATE SEQUENCE admin_board_recommend -- 공지게시판 추천수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; CREATE SEQUENCE admin_board_reply_recommend -- 공지게시판 댓글 추천수 START WITH 1 INCREMENT BY 1 MAXVALUE 20000; | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | --회원게시판(일반게시글) 테이블에 자료를 넣어보기--- insert into MEMBER_BOARD(member_bno, user_id, viewcnt, title, rcnt, content, recommend) values (member_bno.nextval, 'dlgkstjq12', member_board_viewcnt.nextval, '게시글쓰기', 1,'처음 쓰는 게시글',member_board_recommend.nextval); select * from MEMBER_BOARD; delete from MEMBER WHERE E_MAIL='dlgkstjq623@naver.com'; select * from MEMBER; ------------외래키에 제약조건을 추가 참조테이블의 값이 삭제되면 연쇄삭제되도록 수정하기 위해 일단 외래키를 전부 삭제하고 제약조건을 추가해서 다시 생성---- ALTER TABLE MEMBER_REPLY DROP CONSTRAINT user_id; ALTER TABLE MEMBER_REPLY ADD CONSTRAINT user_id FOREIGN KEY (user_id) REFERENCES MEMBER(user_id)ON DELETE CASCADE; ALTER TABLE MEMBER_REPLY DROP CONSTRAINT member_bno; ALTER TABLE MEMBER_REPLY ADD CONSTRAINT member_bno FOREIGN KEY (member_bno) REFERENCES MEMBER_BOARD(member_bno)ON DELETE CASCADE; ALTER TABLE MEMBER_BOARD DROP CONSTRAINT user_id2; --회원게시판(일반게시물) 테이블의 ID를 외래키로 설정 ALTER TABLE MEMBER_BOARD ADD CONSTRAINT user_id2 FOREIGN KEY (user_id) REFERENCES MEMBER(user_id)ON DELETE CASCADE; ALTER TABLE MEMBER_BEST_BOARD DROP CONSTRAINT user_id3; --회원게시판(베스트게시물) 테이블의 ID를 외래키로 설정해서 MEMBER 테이블을 참조하도록 설정 ALTER TABLE MEMBER_BEST_BOARD ADD CONSTRAINT user_id3 FOREIGN KEY (user_id) REFERENCES MEMBER(user_id)ON DELETE CASCADE; ALTER TABLE MEMBER_BEST_BOARD DROP CONSTRAINT member_bno2; --회원게시판(베스트게시물) 테이블의 member_bno를 외래키로 설정해서 MEMBER_BOARD 테이블을 참조하도록 설정 ALTER TABLE MEMBER_BEST_BOARD ADD CONSTRAINT member_bno2 FOREIGN KEY (member_bno) REFERENCES MEMBER_BOARD(member_bno)ON DELETE CASCADE; ALTER TABLE ADMIN_BOARD DROP CONSTRAINT admin_id; --관리자 테이블, 공지게시판 테이블, 공지게시판 댓글 테이블의 FK 제약조건을 설정 ALTER TABLE ADMIN_BOARD ADD CONSTRAINT admin_id FOREIGN KEY (admin_id) REFERENCES ADMIN(admin_id)ON DELETE CASCADE; ALTER TABLE ADMIN_BOARD_REPLY DROP CONSTRAINT bno; ALTER TABLE ADMIN_BOARD_REPLY ADD CONSTRAINT bno FOREIGN KEY (bno) REFERENCES ADMIN_BOARD(bno)ON DELETE CASCADE; --댓글 게시판 BNO의 타입을 변경 (참조할 컬럼의 데이터타입과 일치하도록..) ALTER TABLE ADMIN_BOARD_REPLY modify(bno number(10)); ALTER TABLE ADMIN_BOARD_REPLY DROP CONSTRAINT user_id4; --공지게시판의 댓글 테이블에 ID를 회원 테이블의 ID를 참조하도록 외래키로 설정 ALTER TABLE ADMIN_BOARD_REPLY ADD CONSTRAINT user_id4 FOREIGN KEY (user_id) REFERENCES MEMBER(user_id)ON DELETE CASCADE; | cs |
'개인프로젝트' 카테고리의 다른 글
각 테이블 연동해서 기능 구현 (2) (0) | 2019.07.19 |
---|---|
각 테이블 연동해서 기능 구현 (1) (0) | 2019.07.18 |
테이블 외래키 설정 (0) | 2019.07.17 |
개인 프로젝트 기능 리스트 (0) | 2019.07.17 |
프로젝트 관련 테이블 생성 (0) | 2019.07.17 |