Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>All the constraints are listed in INFORMATION_SCHEMA.TABLE_CONSTRAINTS:</p> <pre><code>mysql&gt; create table test.foo (id int primary key); mysql&gt; create table test.bar (fooid int, foreign key (fooid) references foo(id)); mysql&gt; select * from information_schema.table_constraints where constraint_schema = 'test'\G *************************** 1. row *************************** CONSTRAINT_CATALOG: def CONSTRAINT_SCHEMA: test CONSTRAINT_NAME: bar_ibfk_1 TABLE_SCHEMA: test TABLE_NAME: bar CONSTRAINT_TYPE: FOREIGN KEY *************************** 2. row *************************** CONSTRAINT_CATALOG: def CONSTRAINT_SCHEMA: test CONSTRAINT_NAME: PRIMARY TABLE_SCHEMA: test TABLE_NAME: foo CONSTRAINT_TYPE: PRIMARY KEY </code></pre> <p>And all the columns in those constraints are in INFORMATION_SCHEMA.KEY_COLUMN_USAGE:</p> <pre><code>mysql&gt; select * from information_schema.key_column_usage where constraint_schema = 'test'\G *************************** 1. row *************************** CONSTRAINT_CATALOG: def CONSTRAINT_SCHEMA: test CONSTRAINT_NAME: bar_ibfk_1 TABLE_CATALOG: def TABLE_SCHEMA: test TABLE_NAME: bar COLUMN_NAME: fooid ORDINAL_POSITION: 1 POSITION_IN_UNIQUE_CONSTRAINT: 1 REFERENCED_TABLE_SCHEMA: test REFERENCED_TABLE_NAME: foo REFERENCED_COLUMN_NAME: id *************************** 2. row *************************** CONSTRAINT_CATALOG: def CONSTRAINT_SCHEMA: test CONSTRAINT_NAME: PRIMARY TABLE_CATALOG: def TABLE_SCHEMA: test TABLE_NAME: foo COLUMN_NAME: id ORDINAL_POSITION: 1 POSITION_IN_UNIQUE_CONSTRAINT: NULL REFERENCED_TABLE_SCHEMA: NULL REFERENCED_TABLE_NAME: NULL REFERENCED_COLUMN_NAME: NULL </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload