데이터베이스 모델링
테이블정하기
속성쓰지말고
테이블명으로 사용할수있는것들
메뉴를 뽑는게아니라 역할을 뽑아야한다
쇼핑몰에서의 역할자
회원이 등록하는 대상
개인정보,
장바구니,
비회원이 등록하는 대상[데이터베이스 모델링]
DBMS 종류
-RDBMS, OODBMS, ...
RDBMS : Relational DBMS
관계형 DB
무결성 : -> 데이터 중복을 제거하는 방식으로 -> 파일(뷰)-> 쪼갬(집중화) -> 테이블
사용할 때는 :
테이블 -> 합쳐서 (뷰)-> 파일
테이블을 합칠 때 기준?
객체지향DB, RDBMS:관계
관계가 무엇인가요?
: 행위를 말한다.
주어(테이블) 동사(행위:관계) 목적어(테이블)
[회원:주어]이 [게시글:대상]을 등록[행위:관계]하다.
[제일 먼저 해야 할 가이드 1]
주어를 찾는 것.==주체를 찾는 것==행위자를 찾는 것==역할자를 찾는 것
사람수 != 역할자수
---------- ICODA를 보면서 이 사이트에서의 역할자를 찾으시오 ---------
회원
비회원
관리자
판매자
------ 역할자를 찾았으면 등록이라는 행위를 하게 되는 대상을 찾으시오.-----
-회원(이) [ ]를 등록하다.
관심상품 X : 회원이 상품을 등록하진않는다.
행위는 두개넣지말기
-관리자(이) [ ]를 등록하다.
판매자관리
-판매자(이/가) [ ]를 등록하다.
------ 위의 문제에 대한 리뷰 -------------
회원이 등록
- 회원정보 (주소, 이름, 전화번호,,)
- 장바구니 (X) ==> 등록하다에 어울리는 대상은 아님 ~에 "담다"를 말하는 행위에 더 어울림
- 관심 상품 ==> 합성어는 단위를 쪼개서 처리해야 함. 행위를 명사에 붙여서 표현하면 모든 것이 대상이 될 수 있음.
- 상품 평
- 상품정보 ==> 정보라는 어휘는 생략하는 것이 바람직함.
- 상품 문의 (질문)
<가이드>
1. 합성어는 분리하고 분리한 어휘에서 행위는 제거하시오.
2. 정보라는 단어는 제거하시오.
3. 그 후에 남은 어휘가 등록이라는 대상에 어울리는지 확인하시오.
4. 속성명은 그것의 구조화된 데이터로 변경하시오.
-------------------------------------------------------------------
회원이 [글]을 등록하다.
관리자가 [이벤트/공지사항/배너광고] 등록하다.
판매자는 [상품]을 등록하다.
데이터베이스 설계
개념설계
논리설계
물리설계
개념설계(Concept..)
Entity-Relation
키를 뽑는다.
관계를 찾는다. (등록, 수정, 다른동사 찾기)
등록이 데이터가쌓이거나, 삭제내역이쌓이면,조회내역이쌓이면(레코드가 쌓이면) ->데이터베이스에 관계표시
임시데이터는 데이터베이스를 사용하지않는다.
[ 회원 ]이 [ 배너광고 ]을 [ 조회 ]하다
=== < 리뷰 > =========================================================
행위를 뽑아서 보면… 다음과 같은 것들을 체크해야 한다.
- 업무적으로 다루는 내용인가.
- 행위가 데이터를 누적하는가? 추가로 누적되는 데이터가 없다면 관계로 보지 않는다..
예) 수정/삭제 -> 위키를 아시나요? 위키에서는 글을 수정하면 누가?언제?무엇?..을 저장해요. 그러면 이렇게 수정된 내역이 추가된다면 그것은 관계로 간주한다.
관계는 데이터베이스에 등록되는 것만을 대상으로 한다.
- 위의 내용을 만족하기는 하나 데이터를 별도의 파일이나 저장소를 이용하는 경우는 데이터베이스의 관계에서 제외된다.
데이터베이스를 사용하지 않고 다른 저장소를 선택하는 기준이 있느냐?
- 임시 데이터
- 수정/삭제/등록 과 같은 조작을 수반하지 않고 읽기 전용 데이터를 기록하는 경우
[판매자]가 [상품]을 [등록/수정/삭제/조회]하다.
[회원]이 [상품]을 [구매/찜/조회/평가]하다.
[관리자]가 [상품]을 [등록/수정/삭제/조회]하다
'2021 Newlecture > Servlet & JSP' 카테고리의 다른 글
첨부파일이 여러개인경우 / 첨부파일없이 등록할경우/첨부파일다운로드 (0) | 2021.05.26 |
---|---|
1정규화 위배 / 3정규화 위배 예시 (0) | 2021.05.17 |
키의 종류 / 관계선/ 정규화 (0) | 2021.05.14 |
데이터베이스 모델링 2 (0) | 2021.05.13 |
VIEW/ SELF JOIN / 조인대신 서브쿼리사용 (0) | 2021.05.11 |
INNER JOIN / OUTER JOIN / 3개 테이블 조인 (0) | 2021.05.10 |
(JSP) 수정한내용 저장 / 등록페이지 / 삭제 (0) | 2021.05.07 |
(JSP) 상세페이지내 수정 / sendRedirect/ service.get(id)으로 기존데이터가져오기 (0) | 2021.05.06 |