안녕하세요 이번에 입문하게된 웹프로그래머 입니다.
다름이 아니고 제가 커뮤니티 기능을 맡아서 개발을 하고 있는데
커뮤니티 고유값이 auto_increment일때 다른테이블에 외래키로 적용할려면 어떻게 해야 하는지 궁금합니다.
데이터베이스는 mysql로 개발하고 있습니다.
가령 예를들어 커뮤니티 테이블이 아래와 같이 있고
create table comunity (
uid MEDIUMINT NOT NULL AUTO_INCREMENT
Mngr varchar(255) NOT NULL,
Nm varchar(255) NOT NULL,
PRIMARY KEY (uid)
)
아래 테이블은 회원 정보 테이블 입니다.
CREATE TABLE member (
studyUid MEDIUMINT NOT NULL AUTO_INCREMENT,
FOREIGN KEY (uid) REFERENCES doy_study(uid) ON UPDATE CASCADE ON DELETE CASCADE
)
이렇게 생성하면 상관이 없을까요?
그리고 회원가입을 했을 때 해당 커뮤니티 고유값(uid)을 넣어야 하는데 php로 소스를 짜면
어떻게 짜야 할까요? 선배님들 많은 답변 부탁드리겠습니다!!
스크립트 돌려보셨나요? 위 스크립트만 보면 오류 발생 할 수 있는 부분이 많이 보입니다.
참조키 만들 때 member에 uid라는 속성이 없고요, doy_study라는 테이블은 위 스크립트에 없는 테이블입니다. 또한 member 테이블에서 auto_increment를 쓰려면 기본키로 설정되어 있어야 합니다.
커뮤니터 고유값은 자동으로 집어 넣을 수 없겠죠, 그 커뮤니티 고유 값으로 프로그램에서 들고 있다가 회원 가입 할 때 같이 넣어줘야 할 것 같습니다.
그리고 질문을 단계적으로 하나씩 풀이하시는 것이 좋을 것 같습니다.
질문이 복합적이면 답을 주시는 분들이 없을 수 있습니다.