본문 바로가기

JAVA_School/JAVA_School_class

[0308] DB설계및구현1

SQLD자격증, 오라클 자격증 DB로서의 커리어 + 정보처리기사 자격증 (4학년)

supplier -> manufactors -> distributor(도매, = whole saler) -> Retaler (소매) -> Customer

 

TAL Distributors

주문, 소매업체들의 주문의 데이터, 

REpresentative 대표, 영업사원

 

TAL Distributors 의 Background

spread sheet 사용의 문제점

Redundancy(중복) 같은 data가 여러곳에 저장되거나 중복/복사 됨

필요 관련 데이터 접근어려움, 보안상의 한계점, 사이즈의 한계

 

데이터 베이스도 결국엔 파일임. 

데이터를 따로 저장하는 이유? 김씨만 뽑아낼 수 있음. 

number of units on hand : 재고

 

주문에 대한 데이터도 저장해야함.

주문이 있는데 주문을 따로한 이유? 

하나하나의 제품에 여러개의 아이템이 담겨 있으면?

 

relational database

하나의 스프레드시트 안에 여러개의 정보를 넣어 중복이 된다.

그 제품의 이름을 보여달라했는데 쪼개놓은걸 잠시 이어 붙여야한다. 쪼갰지만 같이 합쳐 있었다가 분리되어져온 테이블 간의 관계..

 

해당 주문을 도와줬다보다는 그 고객에 배정된.. order입장에서는 customer, item 이다.

customer entity는 뭐랑 관련이 있냐면 representitive와 관련이 있다.

item은 order와 관계를 맺고 있다. 이런식의 관계를 맺고 있어 database에 쪼개져 있지만 관계를 통해 합칠 수 있다.

 

entity는 데이터를 저장하고자 하는 대상

- 사람이 될 수도 있고, 장소가될 수도 있다, 것이 될 수도 있고, event ..

어떠한 대상도 entity라 할 수 있다.

entity가 중요했고 그다음 attribute가 중요하다

 

attribute 대상에 대해 어떤 데이터를 저장하고 싶냐, costumer는 아이템 넘버, 이름 description

attribute : 각각에 대상에 대해 특징이나 속성, = field, column (customer은 customer의 번호, 이름 폰넘버 이거 하나하나가 attribute였다. column은 열이다. field라고도 부른다. 열이면 하나하나가 행이다. row(행)

(record, Tuple)  데이터 베이스

중요한 것이 용어, 용어만 제대로해서 인터뷰만 해도 좋다. Attribute = column, field

row = record = tuple

 

entity 데이터를 저장하고자하는 대상

attribute 세부적인 속성 , 어떤 데이터를 저장하고 싶은지

relationship 관계는 entity들 사이의 관계 왜 관계까 필요하나? 카테고리별로 나중에 합치기 위해

one to many relationship ? 관계에는 3가지 종류가 있음.

one to many relationship.

customer item rep order 4개

customer와 rep 사이에 대해 생각해보자.

customer - rep 관계가 있다. -> 관계가 one to many 이다?

-> 한명의 customer을 여러명의 rep이 도울 수 있다.

customer와 rep의 관계가 여러명의 소매상이 한 명의 영업사원에 도움을 받는다

한 명의 영업사원이 여러명의 customer을 담당할 수 있다.

데이터베이스 건축가는 뭘 해야되냐면 디자인을 하기 위해 정보를 수집해야한다. 

Data Requirement 수집, 영업사원에 대해서도 .. 

Data Requirement & Business Rule

business까지 같이 이해를 해야 database가 같이 디자인 된다. 

 

business rule 에 기반한 것이다. customer에 대한 데이터, 이 뿐만 아니라 그 회사의 비지니스에 관한 것.

data requirement뿐만 아니라 파악을 해야한다. 

 

회사에 나오는 보고서, 문서 하나하나가 다 data로 만든 것이다. 인터뷰 결과 거기서 주고받은 여러 문서 회의를 통해 파악한 것이 다 데이터 베이스이다.

 

entity , attribute, relationship ! 이 제일 중요!

 

Data file : 데이터를 저장하는 파일, textfile이 될 수도 있고 일반 textfile에 저장할 수도 있고 일상적인 종이 파일의 컴퓨터 버전이다.

 

Data base : 엔터티, 속성, 관계/ entity attribute relationship에 대한 정보를 저장할 수 있는 것이다. 

entity는 데이터를 저장하고자 하는 대상

attribute 

relationship: 각각의 관계

 

order 과 orderline이 합쳐질 수 있다.

합치는건 좋은 디자인 x 더욱 복잡해짐