Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 코딩입문
- 데이터베이스 JOIN
- SQL
- 데이터베이스 DELETE
- 사무용 노트북
- 레노버 슬림3
- 개발자준비
- 코린이
- 레노버 아이디어패드 슬림3
- 데이터베이스
- lenovo ideapad 3
- 데이터베이스기초
- 티모장인
- 자바초보
- 자바입문
- IdeaPad 3 15ABA7
- 오라클 DELETE
- 가성비 노트북
- 라이젠노트북
- 슬림3
- 코딩일기
- 데이터베이스 집합연산자
- 오라클UPDATE
- 레노버 노트북
- 데이터베이스 예제
- 데이터베이스 기초
- 코딩초보자
- 데이터베이스 UPDATE
- 오라클
- 탑마이장인
Archives
- Today
- Total
스퐁지송 개발노트
데이터베이스 정규화 해보기 예제 본문
728x90
오라클로 테이블 만들고 데이터 넣기
create table 고객(
고객번호 number(4) primary key,
이름 varchar2(50),
회원등급 varchar2(50)
);
create table 구매현황 (
고객번호 number(4),
상품 varchar2(50) --var = 가변형으로 2 = 2000btye -> 4000byte로
);
--코드로 테이블에 데이터 넣기
insert into 구매현황 values (1001,'셔츠');
insert into 구매현황 values (1002,'바지');
insert into 구매현황 values (1003,'바지');
insert into 구매현황 values (1004,'반팔티');
외래키 지정해주기
--외래키 지정해주기
alter table 구매현황 --구매현황 테이블을 수정해줄꺼다
add constraint fk_고객번호 -- 제약조건 이름지정
foreign key(고객번호) -- 구매현황테이블의 고객번호를 외래키로 지정
REFERENCES 고객고객번호) -- 고객테이블의 고객번호를 참조하는
on delete cascade; --기본키가 지워지면 외래키도 따라서 지워져라
(지정해주지않으면 기본적설정으로 안지워짐 막혀있음)
정규화 적용전
<구매내역>
아이디 | 이름 | 상품명 | 상품카테고리 | 구매수량 | 구매일자 | 가격 | 무료배송여부 |
qwe | 티모 | 청바지 | 하의 | 2 | 1월1일 | 8000 | o |
asd | 마이 | 반바지 | 하의 | 1 | 1월2일 | 5000 | o |
zxc | 베인 | 반팔티 | 상의 | 3 | 1월2일 | 6000 | x |
정규화 기본 조건(예시)
상품카테고리는 상품명에 의해 결정됨
무료배송여부는 상품카테고리에 의해 결정됨
가격은 상품1개의 가격임
정규화 적용
<상품카테고리>테이블
상품명(PK) | 상품카테고리(FK) | 가격 | 무료배송여부 |
청바지 | 하의 | 8000 | O |
반바지 | 하의 | 5000 | O |
반팔티 | 상의 | 6000 | X |
<무료배송여부> 테이블
상품카테고리(PK) | 무료배송여부 |
하의 | O |
상의 | X |
<회원정보>테이블
아이디(PK) | 이름 |
qwe | 티모 |
asd | 마이 |
zxc | 베인 |
<구매내역>테이블
아이디(FK) | 상품명 | 구매수량 | 구매일자 |
qwe | 청바지 | 2 | 1월1일 |
asd | 반바지 | 1 | 1월2일 |
zxc | 반팔티 | 3 | 1월2일 |
TIP : 테이블안에서 없어도 다른 데이터로 의미을 유추할 수 있는 데이터가 있으면 뺄수있지만
연관된 유추 가능한 데이터가 없으면 테이블에서 뺄 수 없다
728x90
'DATABASE' 카테고리의 다른 글
데이터베이스 연습하기 예제--집합연산자(UNION ,INTERSECT,MINUS ),JOIN,서브쿼리 (0) | 2023.01.12 |
---|---|
데이터베이스 집합연산자(UNION ,INTERSECT,MINUS ),JOIN,서브쿼리 (0) | 2023.01.11 |
데이터베이스 제1,2,3 정규화/정규형 (0) | 2023.01.11 |
데이터베이스 그룹함수(COUNT,SUM,MAX,MIN,AVG),그룹화(GROUP BY) (0) | 2023.01.10 |
데이터베이스 함수 예제 (0) | 2023.01.10 |
Comments