У меня есть большая база данных с более чем 150 таблицами, которые мне недавно вручили. Мне просто интересно, есть ли простой способ просмотреть все ограничения внешнего ключа для всей БД, а не для каждой таблицы.
Просмотр всех ограничений внешнего ключа для всей базы данных MySQL
Ответ 1
Для этого вы можете использовать таблицы INFORMATION_SCHEMA
. Например, таблица INFORMATION_SCHEMA TABLE_CONSTRAINTS
.
Что-то вроде этого должно это сделать:
select *
from INFORMATION_SCHEMA.TABLE_CONSTRAINTS
where CONSTRAINT_TYPE = 'FOREIGN KEY'
Ответ 2
Это то, что я предпочитаю получать полезную информацию:
SELECT CONSTRAINT_NAME,
UNIQUE_CONSTRAINT_NAME,
MATCH_OPTION,
UPDATE_RULE,
DELETE_RULE,
TABLE_NAME,
REFERENCED_TABLE_NAME
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
WHERE CONSTRAINT_SCHEMA = 'your_database_name'
Ответ 3
В настоящее время принятый ответ пользователем RedFilter будет работать нормально, если у вас всего одна база данных, но нет, если у вас их много.
После ввода use information_schema;
используйте этот запрос, чтобы получить внешние ключи для name_of_db
:
select * from `table_constraints` where `table_schema` like `name_of_db` and `constraint_type` = 'FOREIGN KEY'
Используйте этот запрос, чтобы получить внешние ключи для name_of_db
, сохраненные в файле, записываемом в мир output_filepath_and_name
:
select * from `table_constraints` where `table_schema` like "name_of_db" and `constraint_type` = 'FOREIGN KEY' into outfile "output_filepath_and_name" FIELDS TERMINATED BY ',' ENCLOSED BY '"';
Ответ 4
Запросить этот код
select constraint_name,
table_schema,
table_name
from information_schema.table_constraints
Вы получите имя constraint_name и отфильтруйте таблицу_схемой, которая является списком database
.
Ответ 5
SQL:
select constraint_name,
table_schema,
table_name
from information_schema.table_constraints
where constraint_schema = 'astdb'
Вывод:
+----------------------------+--------------+---------------------+
| constraint_name | table_schema | table_name |
+----------------------------+--------------+---------------------+
| PRIMARY | astdb | asset_category |
| PRIMARY | astdb | asset_type |
| PRIMARY | astdb | asset_valuation |
| PRIMARY | astdb | assets |
| PRIMARY | astdb | com_mst |
| PRIMARY | astdb | com_typ |
| PRIMARY | astdb | ref_company_type |
| PRIMARY | astdb | supplier |
| PRIMARY | astdb | third_party_company |
| third_party_company_ibfk_1 | astdb | third_party_company |
| PRIMARY | astdb | user |
| PRIMARY | astdb | user_role |
+----------------------------+--------------+---------------------+