Solved

FK relationship in MySQL in WorkBench IDE

Posted on 2010-08-12
4
652 Views
Last Modified: 2013-11-08
i'm having trouble creating a one to many foreign key relationship between two InnoDB tables that I have created in my MySQL db using the workbench IDE. I'm using this in conjuction with vs 2010 and the entity framework. so i'm looking for some visual aids (tutorials preferably) that address this and show me the proper way to achieve this. Any suggestions and or suggested resources would be appreciated.
0
Comment
Question by:mikesExpertExchange
  • 2
  • 2
4 Comments
 
LVL 42

Accepted Solution

by:
dqmq earned 500 total points
ID: 33424308
You implement a one-many relationship simply by including a key of the parent table (the one) in the child table (the many).  Usually, it is the primary key, but any unique key will do.

If you want the database to enforce the integrity of that relationship, then you use a foreign key constraint.  The foreign key constraint is a "rule" applied to the child table that guarantees the value of the foreign key will be present in the referenced unique key of the parent table.

alter table CHILDTABLE add constraint CONSTRAINTNAME foreign key (COL1, COL2...) references PARENTTABLE (COL1, COL2)

I haven't used MySQL IDE, but most development enviornments provide a graphical way to create the necessary keys and constraints.  Someone else will need to assist you with that.  
0
 
LVL 1

Author Comment

by:mikesExpertExchange
ID: 33425010
thank you. as a sidenote, good, bad or indifferent, can you have a primary key that is a character string?
0
 
LVL 42

Expert Comment

by:dqmq
ID: 33432608
Absolutely!  But if it's longer than 16 bytes, I'd reconsider (for optimization reasons).
0
 
LVL 1

Author Comment

by:mikesExpertExchange
ID: 33432781
thanks for your help....
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Creating and Managing Databases with phpMyAdmin in cPanel.
Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question