parfaitmacaron — 2013-04-12T18:48:16-04:00 — #1
I am trying to import MySQL code into phpMyAdmin.
1005 - Can't create table 'dbname.test_table' (errno: 15
The above is the error code which I am getting. I have googled and it suggests it's a foreign key constraint error.
I am reading this article, trying to troubleshoot. http://verysimple.com/2006/10/22/mysql-error-number-1005-cant-create-table-mydbsql-328_45frm-errno-150/
- All tables use INNODB engine.
- I have re-ordered my tables (it has created the first few tables which require no foreign keys successfully)
Is it wrong to have a foreign key in my members type table called memberID and also to have the primary key in my members table called memberID. Could this be why it is not importing when I list the constraint like this...
CONSTRAINT member_fk FOREIGN KEY (`[B]member_id[/B]`) REFERENCES members (`[B]member_id[/B]`)
r937 — 2013-04-12T19:33:46-04:00 — #2
yes, it is wrong, you have it backwards
member types to members is a one-to-many relationship
each member type can have multiple members, but a member can belong to only one member type
in one-to-many relationships, the foreign key goes in the "many" table, referencing the primary key of the "one" table
parfaitmacaron — 2013-04-13T16:38:19-04:00 — #3
Thanks for your reply!
I've checked my relationships according to how you mentioned above and it is how you have described. What I've done is import tables (successful) without constraints. I am going to try and use ALTER table now and see if I can implement the constraints that way since the tables with fields are there now.