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.
  • 1 Users Found This Useful
Was this answer helpful?

Related Articles

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

Useful Tutorials:Examples on using MySQL commands:...

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're trying to access $result...

How do I delete a table from a database?

Use this sql command "DROP TABLE yourtablename"

How can i select random rows from a table?

SELECT * FROM table_name ORDER BY RAND();Found at...

Select statement to join tables?

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