본문 바로가기

나의 공부방/MySQL

[MySQL] 기본키(Primary Key) , 외래키 (Foreign Key), 고유키(Unique)

기본키(Primary Key)

- NULL 값 허용하지 않음

- 테이블당 하나의 기본키만 지정 가능

- 중복되지 않는 고유값만 허용

 

-- 기본키 넣는 방법 1
CREATE TABLE people (
  name CHAR(3) PRIMARY KEY,
  nickname VARCHAR(10)
);

 

-- 기본키 넣는 방법 2
CREATE TABLE people (
  name CHAR(3),
  nickname VARCHAR(10),
  PRIMARY KEY (first_name)
);

 

기본 키 변경하기

ALTER TABLE people DROP PRIMARY KEY;

ALTER TABLE people ADD PRIMARY KEY (name);

 

고유키(Unique)

- 중복되지 않는 고유값만 허용

- NULL 값 가능

 

-- 고유키 넣는 방법 1
CREATE TABLE people (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name CHAR(3) UNIQUE,
  nickname VARCHAR
);

 

-- 고유키 넣는 방법 2
CREATE TABLE people (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name CHAR(3),
  nickname VARCHAR,
  UNIQUE (first_name)
);

 

외래키 (Foreign Key)

- 기준 테이블을 다른 테이블과 연결해주는 역할

- FOREIGN KEY 제약 조건을 통하여 하나의 테이블을 다른 테이블에 의존

외래 키 추가하기

ALTER TABLE [자식테이블명]
  ADD CONSTRAINT [제약명] 
  FOREIGN KEY [자식테이블외래키 ]
  REFERENCES 부모테이블명 [부모테이블기본키]
  -- ON DELETE  삭제시제약 
  -- ON UPDATE  수정시제약 

 

외래 키 삭제하기

ALTER TABLE  자식테이블명 DROP FOREIGN KEY  자식테이블외래키

 

외래 키 제약

 

 

 

 

참고 :갖고노는 MySQL 데이터베이스 by 얄코 대시보드 - 인프런 | 강의 (inflearn.com)

'나의 공부방 > MySQL' 카테고리의 다른 글

[MySQL] 기본 쿼리문  (0) 2023.06.27
[MySQL] MySQL 설치하기  (0) 2023.06.25