Estou configurando um banco de dados usando o phpMyAdmin. Eu tenho duas tabelas ( fooe bar), indexadas em suas chaves primárias . Estou tentando criar uma tabela relacional ( foo_bar) entre eles, usando suas chaves primárias como chaves estrangeiras.
Criei essas tabelas como MyISAM, mas desde então as três foram alteradas para InnoDB, porque li que o MyISAM não suporta chaves estrangeiras. Todos os idcampos são INT(11).
Quando eu escolher a foo_bartabela, clique no link "Ver relação", e tentar definir as colunas FK ser database.foo.ide database.bar.id, ele diz que "Nenhum índice definida!" ao lado de cada coluna.
o que estou perdendo?
Esclarecimento / Atualização
Por uma questão de simplicidade, quero continuar usando o phpMyAdmin. Atualmente, estou usando o XAMPP, que é fácil o suficiente para me concentrar no PHP / CSS / Javascript, e ele vem com o phpMyAdmin.
Além disso, embora eu não tenha sido capaz de configurar chaves estrangeiras explícitas ainda, eu tenho uma tabela relacional e posso executar junções como esta:
SELECT *
FROM foo
INNER JOIN foo_bar
ON foo.id = foo_bar.foo_id
INNER JOIN bar
ON foo_bar.bar_id = bar.id;
Apenas me sinto desconfortável por não ter os FKs definidos explicitamente no banco de dados.













