안녕하세요 호호만두에요
이번에는 mysql db에서 다중 기본키(PK) 설정하는 방법을 알아볼게요!!
우선 처음에 테이블을 만들때 설정해주는게 제일 편하겠죠???
CREATE TABLE table1(
id varchar(10),
name varchar(10),
email varchar(20),
PRIMARY KEY (id)
);
위 처럼 create 문으로 테이블을 만들때 해주면 됩니다
그러면 기본키가 여러개면 어떻게 하냐구요??
위와 똑같아요
CREATE TABLE table2(
id varchar(10),
name varchar(10),
email varchar(20),
PRIMARY KEY (id, name)
);
id 와 name 컬럼을 모두 기본 키로 하고 싶다면 괄호 안에 두개 모두 써주시면 됩니다
그러면 이번에는 이미 기본키를 설정했는데 바꾸고 싶은 경우에 대해서 알아볼게요
첫 번째 코드 처럼 기본키가 이미 설정되어있다고 가정합시다
그런데 table2 처럼 2개로 바꿔주고 싶다면???
아 물론 테이블을 지우고 다시 하는게 간단할거에요...
테이블을 안지우고 하려면 우선 설정된 기본키를 지워줘야 되요
안지우고 하면 중복된다고 안되더라구요
//alter table 테이블 이름 drop PRIMARY KEY;
alter table table1 drop PRIMARY KEY;
그리고 기본키를 다시 alter add문을 이용해서 추가해주면 됩니다
//alter table 테이블이름 add PRIMARY KEY(column1, column2);
alter table table1 add PRIMARY KEY(id, name);
이러면 table2와 같아지게 됩니다
쉽죠??
alter drop과 alter add문을 이용해서 기본키를 변경해봤어요
한 번 따라 해보시는게 머리 속에 잘 남으실거에요
아 물론 처음 부터 PK 설정이 잘 되어있는게 짱이겠죠... 저는 잘 못 설계해서 ㅠㅠ