LMSouq
database Open

Setting up foreign keys in phpMyAdmin?

NA
Nathan Long
1 month ago
3 views
Problem Description
I'm setting up a database using phpMyAdmin. I have two tables (`foo` and `bar`), **indexed on their primary keys**. I am trying to create a relational table (`foo_bar`) between them, using their primary keys as foreign keys. I created these tables as MyISAM, but have since changed all three to InnoDB, because I read that MyISAM doesn't support foreign keys. All `id` fields are `INT(11)`. When I choose the `foo_bar` table, click the "relation view" link, and try to set the FK columns to be `database.foo.id` and `database.bar.id`, it says **"No index defined!"** beside each column. What am I missing? ## Clarification/Update For the sake of simplicity, I want to keep using phpMyAdmin. I am currently using XAMPP, which is easy enough to let me focus on the PHP/CSS/Javascript, and it comes with phpMyAdmin. Also, although I haven't been able to set up explicit foreign keys yet, I do have a relational table and can perform joins like this: SELECT * FROM foo INNER JOIN foo_bar ON foo.id = foo_bar.foo_id INNER JOIN bar ON foo_bar.bar_id = bar.id; It just makes me uncomfortable not to have the FKs explicitly defined in the database.

AI-Generated Solution

Powered by LMSouq AI · GPT-4.1-mini

✓ Solution Ready
Analyzing problem and generating solution…
Was this solution helpful?
Back to Knowledge Base