PRIMARY KEY
기본 키는 테이블 내에서 '유일하게 존재하는 값의 조합'을 설정해서 중복된 데이터가 테이블에 삽입되는 것을 방지하는 제약조건입니다.
기본 키를 사용하므로 데이터의 중복을 방지하고, DBMS는 인덱스를 생성하여 데이터를 빠르게 찾을 수 있습니다.
제약조건
1. AUTO_INCREMENT : 컬럼의 값이 중복되지 않게 1씩 자동으로 증가하여 고유번호를 생성
CREATE TABLE 테이블이름
(
필드이름 필드타입 AUTO_INCREMENT,
// id bigint AUTO_INCREMENT,
...
);
2. NOT NULL : 해당 필드는 NULL 값을 저장할 수 없다.
CREATE TABLE 테이블이름
(
필드이름 필드타입 NOT NULL,
...
);
3. UNIQUE : 해당 필드는 서로 다른 값을 가져야 한다.
CREATE TABLE 테이블이름
(
필드이름 필드타입 UNIQUE,
...
);
4. PRIMARY KEY : 해당 필드가 NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가진다.
CREATE TABLE 테이블이름
(
필드이름 필드타입 PRIMARY KEY,
...
);
5. FOREIGN KEY : 하나의 테이블을 다른 테이블에 의존하게 만들며 데이터의 무결성을 보장한다.
- FK 를 가지는 테이블이 참조하는 기준 테이블의 열은 반드시 PK, UNIQUE 제약조건이 설정되어 있어 한다.
CREATE TABLE 테이블이름
(
필드이름 필드타입,
...
FOREIGN KEY(필드이름)
REFERENCES 테이블이름(필드이름)
);
6. CASCADE : FOREIGN KEY 로 연관된 데이터를 삭제, 변경할 수 있다.
CREATE TABLE 테이블이름
(
필드이름 필드타입,
...
FOREIGN KEY(필드이름)
REFERENCES 테이블이름(필드이름) ON DELETE CASCADE
//ON UPDATE CASCADE
);'Spring' 카테고리의 다른 글
| Spring Day 16 : 지연 로딩과 즉시 로딩 (0) | 2024.02.13 |
|---|---|
| Spring Day 15 : API 명세서 작성(postman) (0) | 2024.02.08 |
| Spring Day 13 : 회원의 상태 변경(isChecked()) (0) | 2024.02.06 |
| Spring Day 12 : @AuthenticationPrincipal (0) | 2024.02.05 |
| Spring Day 11 : 로그인 성공 시 메세지와 StatusCode (0) | 2024.02.02 |