Developer Cafe

MySQL Foreign Keys Setting 본문

SQL

MySQL Foreign Keys Setting

개발자 카페 2021. 5. 31. 10:19
728x90

1. 테스트용으로 두 테이블을 생성한다.

CREATE TABLE parent
(  
  pid INT AUTO_INCREMENT NOT NULL,
  name varchar(5),
  PRIMARY KEY(pid)
) ENGINE = InnoDB;

CREATE TABLE child
(
  pid INT AUTO_INCREMENT PRIMARY KEY,  
  parent_pid INT NOT NULL,
  title varchar(100),
  INDEX(parent_pid),
  FOREIGN KEY(parent_pid) REFERENCES parent(pid)
) ENGINE = InnoDB;

2. 제대로 들어가는지 테스트한다

INSERT INTO parent(name) VALUES('test');
INSERT INTO child(parent_pid, title) VALUES(1, 'test');

3. parent에 값이 없으면 들어가지 않는다

INSERT INTO child(parent_pid, title) VALUES(4, 'test');

※ 쿼리문으로 외래키 설정하기

ALTER TABLE task
ADD CONSTRAINT task_ibfk_1
FOREIGN KEY(member_id)
REFERENCES members(id)
ON UPDATE CASCADE ON DELETE CASCADE;
728x90

'SQL' 카테고리의 다른 글

SQL time_zone Error  (0) 2021.05.27
ON UPDATE CURRENT_TIMESTAMP  (0) 2021.05.21
Comments