코드 그라데이션

데이터베이스 설계 관련 규칙과 제약조건 본문

Database

데이터베이스 설계 관련 규칙과 제약조건

완벽한 장면 2023. 1. 15. 11:43

데이터 모델링 과정

https://m.blog.naver.com/gongtong/150135598792 출처

 

관계 타입 유형

(1) 1 : 1 관계(일 대 일)

  • 개체 집합 A의 각 원소가 개체 집합 B의 원소 1개와 대응

(한명의 교수는 한과목만 강의 하고, 한개의 과목은 한명의 교수에 의해 강의되어진다.)

 

(2) 1 : N 관계(일 대 다)

  • 개체 집합 A의 각 원소는 개체 집합 B의 원소 여러 개와 대응할 수 있고, 개체 집합 B의 각 원소는 개체 집합 A의 원소 1개와 대응

(한학과에는 여러명의 학생이 있을 수 있고 한학생은 한개의 학과에 소속 된다.)

 

(3) N : M 관계(다 대 다)

  • 개체 집합 A의 각 원소는 개체 집합 B의 원소 여러개와 대응할 수 있고, 개체 집합 B의 각 원소는 개체 집합 A의 원소 여러 개와 대응할 수 있음

(한명의 학생은 여러과목을 수강할 수 있고, 한 과목은 여러명의 학생에 의해 수강되어 질 수 있다.)

 

제약조건

  1. NOT NULL
  2. UNIQUE
  3. PRIMARY KEY
  4. FOREIGN KEY
  5. DEFAULT

1. NOT NULL

- 이 제약 조건을 설정하면, 해당 필드는 NULL 값을 저장할 수 없다.

- 즉, 이 제약 조건이 설정된 필드는 무조건 데이터를 가지고 있어야 한다는 뜻

- NOT NULL 제약 조건은 CREATE 문으로 테이블을 생성할 때나, 나중에 ALTER 문으로 추가할 수도 있음

 

2. UNIQUE
- UNIQUE 제약 조건을 설정하면, 해당 필드는 서로 다른 값을 가져야 한다.

- UNIQUE 제약 조건은 CREATE 문으로 테이블을 생성할 때나, 나중에 ALTER 문으로 추가할 수도 있음.

- 즉, 이 제약 조건이 설정된 필드는 중복된 값을 저장할 수 없다는 뜻.

 

3. PRIMARY KEY

- 이 제약 조건을 설정하면, 해당 필드는 NOT NULL과 UNIQUE 제약 조건의 특징을 가진다.

--- 따라서 이 제약 조건이 설정된 필드는 NULL 값을 가질 수 없으며, 또한 중복된 값을 가져서도 안 된다.

 

- UNIQUE는 한 테이블의 여러 필드에 설정할 수 있지만, PRIMARY KEY는 테이블당 오직 하나의 필드에만 가능.

 

==> 이러한 PRIMARY KEY 제약 조건은 테이블의 데이터를 쉽고 빠르게 찾도록 도와주는 역할을 수행!

 

4. FOREIGN KEY

- 외래 키라고 부르며, 한 테이블을 다른 테이블과 연결해주는 역할

- 외래 키가 설정된 테이블에 레코드를 입력하면, 기준이 되는 테이블의 내용을 참조해서 레코드가 입력된다.

=> 즉, FOREIGN KEY 제약 조건은 하나의 테이블을 다른 테이블에 의존하게 만든다는 것.

**FOREIGN KEY 제약 조건을 설정할 때 참조되는 테이블의 필드는

  반드시 UNIQUE나 PRIMARY KEY 제약 조건이 설정되어 있어야 한다.

 

5. DEFAULT

- DEFAULT 제약 조건은 해당 필드의 기본값을 설정할 수 있게 해준다.

- 만약 레코드를 입력할 때 해당 필드 값을 전달하지 않으면, 자동으로 설정된 기본값을 저장한다.

728x90

'Database' 카테고리의 다른 글

데이터베이스(Database, DB)  (0) 2023.01.15
[SC] 데이터베이스와 SQL  (1) 2023.01.15
mySQL Naming 규칙  (0) 2023.01.15
Comments