List of Constraints from MySQL Database

lolajl picture lolajl · Jun 11, 2010 · Viewed 83.2k times · Source

How do I get a list of all constraints from a particular database?

Answer

Senseful picture Senseful · Jun 11, 2010

Use the information_schema.table_constraints table to get the names of the constraints defined on each table:

select *
from information_schema.table_constraints
where constraint_schema = 'YOUR_DB'

Use the information_schema.key_column_usage table to get the fields in each one of those constraints:

select *
from information_schema.key_column_usage
where constraint_schema = 'YOUR_DB'

If instead you are talking about foreign key constraints, use information_schema.referential_constraints:

select *
from information_schema.referential_constraints
where constraint_schema = 'YOUR_DB'