코드 그라데이션
데이터베이스 설계 관련 규칙과 제약조건 본문
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의 원소 여러 개와 대응할 수 있음
(한명의 학생은 여러과목을 수강할 수 있고, 한 과목은 여러명의 학생에 의해 수강되어 질 수 있다.)
제약조건
- NOT NULL
- UNIQUE
- PRIMARY KEY
- FOREIGN KEY
- 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 제약 조건은 해당 필드의 기본값을 설정할 수 있게 해준다.
- 만약 레코드를 입력할 때 해당 필드 값을 전달하지 않으면, 자동으로 설정된 기본값을 저장한다.
'Database' 카테고리의 다른 글
데이터베이스(Database, DB) (0) | 2023.01.15 |
---|---|
[SC] 데이터베이스와 SQL (1) | 2023.01.15 |
mySQL Naming 규칙 (0) | 2023.01.15 |