Does mysql support foreign keys?

The answer to this is two-fold.

Yes. MySQL _DOES_ allow the creation of foreign key constraints
(see
http://www.mysql.com and search documentation for the syntax and other information).

However, FKs are only ENFORCED with InnoDB (the default table-type is MyISAM) tables at present. There is a task added to the TODO list for a future version (5.0 or 5.1, I believe) to add full integrity checking on FKs to all table types.

If you require integrity checking via FKs you MUST use InnoDB format tables. MySQL also requires that you manually create an index on columns which are to be referenced in FKs (both the reference column and the referring column) for speed of queries/joins.

Was this answer helpful?

 Print this Article

Also Read

Do you provide phpMyAdmin web interface to manage the MySQL Database?

Yes, we provide that. You can login to DotNetPanel first Create MySQL Database, create MySQL...

Select statement to join tables?

For a simple join: SELECT a.*, b.*FROM tblAlpha a, tblBeta bWHERE (a.keyfield = b.foreignkey);...

I'm new to MySQL, where should I start?

The best source of MySQL information is the excellent on-line manual : ...

What does this error message means - Warning: Supplied argument is not a valid MySQL result resource and how do you solve it?

I think you got this message from PHP. You get this message when you are trying to access...

How do I delete a table from a database?

Use this SQL command : "DROP TABLE yourtablename"