Mam dużą bazę danych z ponad 150 tabelami, które ostatnio otrzymałem. Zastanawiam się tylko, czy istnieje prosty sposób na obejrzenie wszystkich ograniczeń klucza obcego dla całego DB zamiast na podstawie tabeli.Zobacz wszystkie ograniczenia klucza obcego dla całej bazy danych MySQL
Odpowiedz
Można użyć do tego tabel INFORMATION_SCHEMA
. Na przykład tabela INFORMATION_SCHEMA TABLE_CONSTRAINTS
.
Coś jak to powinno zrobić:
select *
from INFORMATION_SCHEMA.TABLE_CONSTRAINTS
where CONSTRAINT_TYPE = 'FOREIGN KEY'
Wygląda na to, że ma dokładnie to, czego potrzebuję. Dzięki! –
Czy istnieje sposób, aby rzeczywiście wyświetlić nazwę pola klucza obcego również? – JoeTidee
Aktualnie przyjęta przez RedFilter odpowiedź użytkownika będzie działać dobrze, jeśli masz tylko 1 bazę danych, ale jeśli nie masz wiele.
Po wprowadzeniu use information_schema;
wykorzystanie tego zapytania, aby uzyskać klucze obce dla name_of_db
:
select * from `table_constraints` where `table_schema` like `name_of_db` and `constraint_type` = 'FOREIGN KEY'
użytkowania tego zapytania, aby uzyskać klucze obce dla name_of_db
zapisane światowej zapisywalny pliku 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 '"';
SQL :
select constraint_name,
table_schema,
table_name
from information_schema.table_constraints
where constraint_schema = 'astdb'
wyjściowa:
+----------------------------+--------------+---------------------+
| 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 |
+----------------------------+--------------+---------------------+
Zapytanie ten kod
select constraint_name,
table_schema,
table_name
from information_schema.table_constraints
Dostaniesz constraint_name i filtrować TABLE_SCHEMA który lista database
.
To co ja wolę dostać użytecznych informacji:
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'
- 1. Jak usunąć wszystkie ograniczenia klucza obcego we wszystkich tabelach?
- 2. MySQL: usuń wiersz ignorując ograniczenie klucza obcego
- 3. Obsługa ograniczenia klucza obcego w szynach
- 4. Django - Jak zapobiec tworzeniu klucza obcego bazy danych
- 5. Wartości pola klucza obcego phpMyAdmin obcego klucza
- 6. Czy można usunąć wszystkie ograniczenia klucza obcego na stole naraz w mySQL 5?
- 7. SQL 2008 - Ograniczenia klucza obcego w widoku INFORMATION_SCHEMA
- 8. sposób wyszukiwania całej bazy danych na ciąg znaków w MySQL
- 9. Mapowanie klucza podstawowego jako klucza obcego w bazie danych
- 10. Składnia MySQL w tworzeniu klucza obcego
- 11. Czy ograniczenia klucza obcego wpływają na przekształcanie zapytań w Oracle?
- 12. Obsługa ograniczenia bazy danych hibernacji
- 13. Dlaczego warto używać ograniczeń klucza obcego w MySQL?
- 14. Podczas dodawania ograniczenia klucza obcego, który kierunek jest najlepszą praktyką?
- 15. Najpierw kod EF - niestandardowa nazwa ograniczenia klucza obcego
- 16. Jak usunąć rekord za pomocą ograniczenia klucza obcego?
- 17. MySQL usuń wszystkie spacje z całej kolumny
- 18. Jak usunąć wszystkie ograniczenia klucza obcego z tabeli w Sql Server 2000?
- 19. Plan wykonania klucza obcego Oracle?
- 20. Schemat bazy danych MySQL
- 21. Normalizacja bazy danych MySQL
- 22. Próba rozwiązania metadanych klucza obcego z metadanych JDBC nie może znaleźć odwzorowań kolumn dla klucza obcego
- 23. Jak mogę wykonać zapytanie za pomocą klucza obcego w MySQL?
- 24. SQlite - Android - Składnia klucza obcego
- 25. Mysql utworzyć tabelę ze stwardnieniem klucza obcego Delete SET NULL
- 26. Skróty klucza obcego w tabeli
- 27. Migracje Entity Framework nie mogą upuszczać tabeli z powodu ograniczenia klucza obcego.
- 28. deklarowanie klucza obcego w bazie danych apache derby
- 29. Struktura obiektu: Sprawdź wszystkie relacje jednostki, aby użyć klucza obcego.
- 30. jakie są zalety definiowania klucza obcego?
odpowiedź Zobacz Andy'ego tutaj: https://stackoverflow.com/questions/201621/how-do-i-see- all-foreign-keys-to-a-table-or-column – omarjebari