본문 바로가기

DBMS

[DBMS] 04

모델링

- 추상적인 주제를 DB에 맞게 설계하는 것

1. 요구사항 분석

2. 개념적 설계(개념 모델링)

3. 논리적 설계(논리 모델링)

4. 물리적 설계(물리 모델링)

5. 구현

 


실습 1

 

1. 요구사항 분석

   꽃 테이블과 화분 테이블 2개가 필요하고,

   꽃을 구매할 때 화분도 같이 구매한다.

   꽃은 이름과 색깔, 가격이 있고

   화분은 제품 번호, 색깔, 모양, 꽃 이름이 있다.

2. 개념적 설계(개념 모델링)

3. 논리적 설계(논리 모델링)

4. 물리적 설계(물리 모델링)

5. 구현

   ※ 부모 : ◇ , 자식 : ●

- 꽃 테이블 구현

CREATE TABLE FLOWER(
	FLOWERNAME VARCHAR2(200),
	FLOWERCOLOR VARCHAR2(100),
	FLOWERPRICE NUMBER,
	CONSTRAINT FLOWER_PK PRIMARY KEY(FLOWERNAME)
);

SELECT * FROM FLOWER;

 

- 화분 테이블 구현

CREATE TABLE POT(
	POTID VARCHAR2(100),
	POTCOLOR VARCHAR2(100),
	POTSHAPE VARCHAR2(200),
	NAME VARCHAR2(200),
	CONSTRAINT POT_PK PRIMARY KEY(POTID),
	CONSTRAINT POT_FK FOREIGN KEY(NAME) REFERENCES FLOWER(FLOWERNAME)
);

SELECT * FROM POT;

 

ER Diagram

 


실습 2

- 주인 테이블 구현

/*
	OWNER
	ID VC2(200)
	-----------
	OWNER_NAME VC2(200)
	AGE N(5)
	ADDRESS VC2(300)
*/

CREATE TABLE OWNER(
	ID VARCHAR2(200) PRIMARY KEY,
	NAME VARCHAR2(200) NOT NULL,
	AGE NUMBER(5) DEFAULT 20,
	ADDRESS VARCHAR2(300)
);

 

- 반려동물 테이블 구현

/*
	PET
	PIN VC2(300)
	------------
	NAME VC2(200)
	AGE N(5)
	ID VC2(200)
*/

CREATE TABLE PET(
	PIN VARCHAR2(300) PRIMARY KEY,
	NAME VARCHAR2(200) NOT NULL,
	AGE NUMBER(5) DEFAULT 1,
	OWNERID VARCHAR2(200),
	GENDER CHAR(1) DEFAULT 'M' NOT NULL CONSTRAINTS CHECK_CHAR CHECK(GENDER IN('M', 'W')),
	CONSTRAINT PET_FK FOREIGN KEY(OWNERID) REFERENCES OWNER(ID)
);

 

ER Diagram

 

'DBMS' 카테고리의 다른 글

[DBMS] 06  (0) 2021.10.30
[DBMS] 05  (0) 2021.10.29
[DBMS] 03  (0) 2021.10.27
[DBMS] 02  (0) 2021.10.26
[DBMS] 01  (0) 2021.10.25