코딩 기록들
[Database Programming] 10. 데이터베이스 구성 실습 (분석)1 본문
https://www.goodgag.net/304468
해당 사이트의 공지글 및 다른 2개 게시글을 execel시트로 구성해보는 실습
순서
1. 컬럼명으로 들어갈 만한 요소들을 나열하기
2. '게시글' 시트에 PK로 지정할 요소 선택 (= 게시글 번호)
- 게시글 시트에 들어갈 다른 컬럼값 작성(게시글 제목, 게시글 작성자, 게시글 작성일자, 게시글 내용, 출처, 좋아요/싫어요 등)
3. '댓글' 시트에 PK로 지정할 요소 선택 (= 댓글번호)
- 댓글 시트에 들어갈 컬럼값 작성 ( 댓글내용, 댓글작성자, 댓글내용, 댓글이 등록된 시간, 댓글이 수정된 시간, 게시글 번호, 부모댓글 정보, 좋아요/싫어요 등)
- 게시글1에 대해 댓글이 n개이므로, 1:N 관계에서 N에 해당하는것을 1에다 적으면 PK중복이 발생하므로 N(댓글)에다가 1(게시글번호, 댓글을 단 회원아이디, 부모댓글 아이디)에 대한 정보를 FK로 적어줘야함
4. 로그인과 관련된 회원 정보 작성을 위한 회원시트 생성 후 값 채워주기 (회원아이디 = PK)
5. 1개의 게시글은 여러명의 사용자가 좋아요/싫어요 할 수 있음 -> 게시글에서 좋아요/싫어요 분리시켜주기
-> 게시글_좋아요_싫어요 시트 생성후 항목채워주기
* 1명의 사용자는 1개의 게시글에대해 1번의 좋아요/싫어요 할수있다 = 여러번 좋아요/싫어요 할 수 없으므로 글번호와 회원아이디를 멀티키로 설정*
6. 1개의 댓글은 N명의 사용자가 좋아요/싫어요 할 수 있고,
1명의 사용자는 여러개의 댓글에 좋아요/싫어요 할 수 있으므로 N:N 관계가 발생함
-> 해소테이블인 '댓글_좋아요_싫어요' 시트 생성 후 항목채워주기
* 1명의 사용자는 1개의 댓글에대해 1번의 좋아요/싫어요 할수있다 = 여러번 좋아요/싫어요 할 수 없으므로 댓글번호와 회원아이디를 멀티키로 설정*
ㅇㄹ
'Database Programming' 카테고리의 다른 글
오라클 SQLD 정리 (0) | 2024.05.27 |
---|---|
[Database Programming] 9. 데이터 삽입, 수정, 삭제(INSERT, UPDATE, DELETE) (0) | 2024.02.21 |
[Database Programming] 3. ER - Diagram (1) | 2024.02.16 |
[Database Programming] 2. SQL (SELECT, FROM, ORDER BY, WHERE) (0) | 2024.02.15 |
[Database Programming] 1. DBMS (1) | 2024.02.15 |