phpMyAdmin을 사용하여 데이터베이스를 설정하고 있습니다. 기본 키에 인덱스 된 두 개의 테이블 ( foo
및 bar
)이 있습니다. 기본 키를 외래 키로 사용하여 관계형 테이블 ( ) 을 만들려고 합니다.foo_bar
이 테이블을 MyISAM으로 만들었지 만 MyISAM이 외래 키를 지원하지 않는다는 점을 읽었으므로 3 개 모두를 InnoDB로 변경했습니다. 모든 id
필드는 INT(11)
입니다.
나는 선택하면 foo_bar
테이블의 "관계보기"링크를 클릭하고 FK 컬럼으로 설정하려고 database.foo.id
하고 database.bar.id
그것이 말하는, "인덱스가 정의되지!" 각 열 옆에
내가 무엇을 놓치고 있습니까?
설명 / 업데이트
간단하게하기 위해 phpMyAdmin을 계속 사용하고 싶습니다. 현재 XAMPP를 사용하고 있는데, 이는 PHP / CSS / Javascript에 집중할 수있을 정도로 쉬우 며 phpMyAdmin과 함께 제공됩니다.
또한 명시 적 외래 키를 아직 설정할 수 없지만 관계형 테이블이 있으며 다음과 같이 조인을 수행 할 수 있습니다.
SELECT *
FROM foo
INNER JOIN foo_bar
ON foo.id = foo_bar.foo_id
INNER JOIN bar
ON foo_bar.bar_id = bar.id;
데이터베이스에 FK가 명시 적으로 정의되어 있지 않은 것이 불편합니다.