首頁 >資料庫 >mysql教程 >如何在資料庫中尋找外鍵引用及其填充值?

如何在資料庫中尋找外鍵引用及其填充值?

Susan Sarandon
Susan Sarandon原創
2024-12-08 14:12:12809瀏覽

How to Find Foreign Key References and Their Populated Values in a Database?

找出外鍵引用和填充值

在資料庫模式中,通常存在透過外鍵引用其他表的表。要識別具有引用特定表和列的外鍵的表,以及這些外鍵包含資料的表,可以使用以下查詢:

SELECT *
FROM
  information_schema.KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id';

此查詢從KEY_COLUMN_USAGE 表中檢索資訊information_schema 資料庫,包含有關外鍵關係的元資料。透過過濾指定的 REFERENCED_TABLE_NAME (X) 和 REFERENCED_COLUMN_NAME (X_id) 上的結果,查詢會列出所有具有指向 X 表的 X_id 列的外鍵的表。

此外,要確保只有填充了外鍵的表包含鍵,查詢可以擴展為包含外鍵中非空值的檢查列:

SELECT t.TABLE_NAME, kcu.*
FROM
  information_schema.KEY_COLUMN_USAGE kcu
JOIN
  information_schema.TABLES t ON t.TABLE_SCHEMA = kcu.TABLE_SCHEMA
  AND t.TABLE_NAME = kcu.TABLE_NAME
WHERE
  kcu.REFERENCED_TABLE_NAME = 'X'
  AND kcu.REFERENCED_COLUMN_NAME = 'X_id'
ORDER BY
  t.TABLE_NAME;

此更新的查詢檢索表名稱以及外鍵元數據,確保結果中僅包含已填入外鍵的表。透過按表名稱對結果進行排序,輸出可以清楚顯示哪些表具有對指定表和列的外鍵引用,以及哪些表包含外鍵欄位中的資料。

以上是如何在資料庫中尋找外鍵引用及其填充值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn