MySQL 기본키와 유일키, 외래키 (primary key, unique key and foreign key)

 

기본키 (primary key)

* 테이블 당 한 개만 존재가능

* 보통 NULL일 수 없다. (NOT NULL)

* 테이블 내 행(row, record)의 유일한 식별자(id)

 

유일키 (unique key, unique index)

* 테이블 당 여러 개 설정 가능

* NULL 가능

* 후보키로 사용될 수 있다 (candidate key)

 

외래키 (foreign key)

* 다른 테이블의 컬럼을 참조하는 키

* 참조되는 컬럼과 외래키의 자료형은 일치해야 한다

* 참조되는 컬럼은 기본키나 유일키만 가능

* ON DELETE CASCADE : 참조되는 컬럼의 행이 삭제되면 외래키를 가진 행도 같이 삭제된다.

 

예:

create table sample (
  ID int unsigned auto_increment,
  REG_NO int unsigned,
  PRIMARY KEY (ID)
  UNIQUE KEY (REG_NO)
);

 

외래키 예:

create table child (
  ID int unsigned auto_increment,
  REG_NO int unsigned,
  CONSTRAINT child_reg_no FOREIGN KEY (REG_NO) REFERENCES sample (REG_NO) ON DELETE CASCADE
);

 

 







TitleNickname
16리눅스 압축 및 압축풀기 (tar, gz, bz2)TT860
15MySQL 기본키와 유일키, 외래키 (primary key, unique key and foreign key)TT1080
14Anysign4pc안녕1470
13리눅스 CPU정보 확인TT1240
12How to set up MySQL max connectionsTT1600
11How to check HTTPS active connections on linuxTT1350
10AWS 비용계산기TT1400
9[MySQL] reducing memory usage on cloud serverTT1750
8crontab usageTT1700
7SQL NULL검색TT1600
6안드로이드 스튜디오 vs 이클립스TT1730
530년 경력 개발자의 조언.jpgTT1580


One Line Message