이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
Date |
2012/02/03 11:10:55 |
Name |
율이 |
Subject |
SQL FK 참조 질문입니다 |
일단 제가 작성한 테이블 쿼리 입니다.
create table 회원
(가입번호 integer
,회원명 varchar(10)
,주민등록번호 varchar(20)
,주소 varchar(100)
,국 integer
,번호 integer
,전번가입 date
,서비스가입 date);
create table 부가서비스
(서비스번호 integer
,서비스종류 varchar(20)
,사용료 integer
,가입날짜 date
,primary key(서비스번호)
,foreign key(가입날짜) references 회원(서비스가입));
일단 회원 테이블 먼저 생성해둔 상태이구요
그 다음에 부가서비스 테이블을 생성하려 하는데 에러가 나더군요
mysql 쓰는데 errno 150 나길래 인터넷에 검색해보니 참조무결성이 지켜지지 않아서 라더라구요
그래서 외래키 관련 내용 지우고 생성해보니 잘됩니다.
foreign key가 현재 테이블에 어떤 테이블을 참조키로 쓸건지 묻는걸로 알고있고(그래서 부가서비스테이블에 가입날짜를 지정)
뒤에 references (테이블명)(컬럼명) 으로 알고있습니다
그래서 회원테이블의 서비스가입이라는 컬럼을 참조한다고 했구요.
인터넷에서 이런 오류가 날때 확인할 사항이 3가지 있었습니다
1. 컬럼 형식이 다르지 않은가? - 둘다 date 로 같습니다
2. 참조 테이블 생성이 되어있지 않은가? - 회원테이블은 이미 생성했고 확인했습니다
3. 오타가 나지 않았는가? 오타도 나지 않았습니다
왜 안되는지 도통 모르겠네요..
|
통합규정 1.3 이용안내 인용
"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
|