백지부터 시작하는 이세계 코딩 생활
Foreign Key 본문
Ref.
https://futurists.tistory.com/16
ALTER TABLE student
ADD CONSTRAINT student_department
FOREIGN KEY(belong)
REFERENCES department2(department_code)
ON UPDATE CASCADE ON DELETE CASCADE;
UPDATE department2
SET department_code = 'CCE'
WHERE department_code = 'IME';
SELECT * FROM student;
SELECT COUNT(*) FROM student;
DELETE FROM department2;
WHERE department_code = 'MSE';
DELETE FROM department2;
ALTER TABLE student
DROP FOREIGN KEY student_department,
DROP KEY student_department;
2 : 제약조건 student_department를 추가한다. student_department는 내가 추가할 임의의 제약조건 이름이다.
3 : belong 을 외래키로 설정할 껀데
4 : department2 테이블의 department_code를 참조한다.
5 : department2 테이블의 department_code가 바뀌면 belong도 바뀌고, 삭제가 되면 함께 삭제 된다.
위 쿼리가 실행되면 student 테이블에 참조키가 표시되는 것을 확인할 수 있다. belong의 key 가 Mul
Ref.
https://m.blog.naver.com/imf4/220779816879
CREATE TABLE [테이블명] (
[컬럼명] [데이터타입] (NOT NULL / DEFAULT NULL),
[컬럼명] [데이터타입] (NOT NULL / DEFAULT NULL),
PRIMARY KEY([기본키로 지정할 컬럼명]),
FOREIGN KEY ([외래키로 지정할 컬럼명]) REFERENCES [참조테이블명] ([참조테이블의 컬럼명])
)
└>> 기본키가 아닌 외래키로만 지정된 컬럼은 데이터의 중복이 허용된다.
'DataBase > mySQL' 카테고리의 다른 글
Mysql : 컬럼명(필드명) 조작 (0) | 2021.08.14 |
---|---|
Mysql : 쿼리문 한번에 여러개 처리하는 방법 (0) | 2021.08.12 |
MySql 5.7 Password 분실시 변경방법 Ref. (0) | 2021.04.17 |
sequence (0) | 2020.08.15 |
Query - practice (0) | 2020.08.15 |
Comments