728x90
테이블
- 관계형 데이터베이스에서 데이터를 관리 및 저장하는 장소
- 데이터의 효율적인 관리 및 적절한 조작이 매우 중요
- 실생활에서 광범위하게 사용되는 2차원 표와 유사.
집합을 다루는 방법
- 집합을 나누는 방법에 따라 한 개 혹은 여러 개의 테이블이 될 수 있음.
데이터베이스 vs 자바
데이터베이스 | 자바 |
테이블 | 클래스 |
열 | 속성 |
행 | 인스턴스 |
- | 메소드 |
기본키(Primary key)
- 특정 집합에서 특정 행을 유일하게 식별할 수 있는 속성의 집합
- 기본키의 값은 한 번 정해지면 가급적 변경이 안된다.
- 반드시 기본키를 설정해야 함. 한 개의 테이블 내에서 중복 행은 허용하지 않음. 기본키는 NULL 허용 안 됨
- 업무상의 이유로 기본키가 없는 테이블이 운영되는 곳도 있긴함.
정규형
- 테이블을 정의하는 기본형태
- 제대로 된 형태. -> 테이블 갱신 시 부정합이 발생하기 어려운 형태
- 정규형을 제대로 지키는 행위를 정규화 위반이라고 부름
- → 정규화가 제대로 되지 않아 관리의 어려움을 겪는 시스템이 다수 존재.
데이터를 다 쪼개자.
쪼개서 관리를 해야지만, 필요한 데이터만 뽑아서, 데이터 중복, 핸들링, SQL 관리, 요구 조건이 바뀌더라도 유연하게 관리할 수 있다.
정규형이란 쪼갤 수 있을 떄까지 계속 쪼개는 것.
제 1 정규형 위반
- 테이블의 셀에 여러 종류의 값을 포함하지 않는다.
테이블 = 함수
- 테이블은 함수와 같다. 기본키의 값을 입력하면 특정 출력 값이 나오는 구조.
- 입력 X의 경우 반드시 한 개의 출력 Y를 결정
제 2 정규형 위반
- 부분함수 종속성을 허용하지 않음.
- 기본키를 구성하는 열의 일부에만 함수 종속이 존재하는 것.
- 올바른 집합 단위에 기초하고 있지 않음
- 갱신 시에 갱신 이상이 발생할 가능성 존재
- 주문 시마다 고객정보를 저장해야 함
- 고객 정보의 중복이 발생할 수 있음
- 고객 정보를 모르면 주문이 불가
- 해소 방법
제 3 정규형 위반
- 위반 사례
- 해결
DA#
- 데이터 모델링 도구
ER 다이어그램
- 데이터 모델링 분야에서 개체-관계 모델이란 구조화된 데이터에 대한 일련의 표현
- ‘구조’화된 데이터를 저장하기 위해 데이터베이스를 쓴다. 이 데이터의 ‘구조’ 및 그에 수반한 제약 조건들은 다양한 기법에 의해 설계될 수 있다. 그 기법 중 하나가 개체-관계 모델링이다. 줄여서 ERM(Entity-Relationship modeling)이다.
- ERM 프로세스의 산출물을 개체-관계 다이어그램(Entity-Relationship Diagram)이라고 한다. 줄여서 ERD.
- 데이터 모델링 과정은 데이터 모델을 그림으로 표현하기 위해 표시법을 필요로 한다.
Barker 표기법
- 오라클 사에서 기본 표기법으로 채택하고 사용하고 있음
참조무결성제약조건 - 참조하려 하는데 대상이 없으면 안대안대
참고 Entity)
https://sept-moon.tistory.com/13
릴레이션십(Relationship)
- entity와 entity 사이의 관계
- 정의된 entity는 대부분이 혼자서는 존재할 수 없음. 관계가 정의 되어야만 비로소 그 역할을 해낼 수 있음
- entity 간의 관련성을 표현한 것이 Relationship. 핵심 사항은 FK인 column은 parent table의 기본키를 참고하고 있다.
728x90
'정리' 카테고리의 다른 글
[데이터베이스 강의 정리] 9. 성능 (0) | 2021.08.05 |
---|---|
[데이터베이스 강의 정리] 8. 백업 및 복구 (0) | 2021.08.05 |
[데이터베이스 강의 정리] <참고> Entity (0) | 2021.08.05 |
[데이터베이스 강의 정리] 6. 락과 데드락(Lock & Deadlock) (0) | 2021.08.05 |
[데이터베이스 강의 정리] 5. 트랜잭션(Transaction) (0) | 2021.08.05 |