Команда "описать таблицу" показывает, какое поле является внешним ключом? Так же, как в случае первичного ключа, показывая "PRI" в ключевой колонке.
Если нет, то как я могу узнать, какое поле в таблице объявлено как внешний ключ?
В MySQL команда SHOW CREATE TABLE
даст вам подробное описание всех столбцов, ограничений и индексов.
Если вы используете инструмент командной строки mysql
, этот вывод очень подробный, поэтому вы должны запустить его с помощью команды \G
чтобы переключиться на альтернативный формат вывода:
SHOW CREATE TABLE example\G
Вы можете использовать встроенный вид:
SELECT TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAME,
REFERENCED_TABLE_NAME,
REFERENCED_COLUMN_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_SCHEMA = 'dbname' AND
REFERENCED_TABLE_NAME = 'table_name';
Если вы используете SQL Server, вы можете использовать sp_help 'TableName' для получения этой информации.
sql server
,mysql
и т. д.?