欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql查詢表是否有外鍵

李中冰2年前8瀏覽0評論

MySQL是一款常用的關系型數據庫管理系統,它支持在表中創建外鍵。在某些場景下,我們需要查詢一張表是否存在外鍵,這個通過MySQL提供的一些系統表可以輕易地實現。

SELECT 
TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME,
REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_SCHEMA = 'your_database_name'
AND REFERENCED_TABLE_NAME = 'your_referenced_table_name';

上面的代碼可以查詢到指定數據庫中,指定表是否存在外鍵。其中需要替換的兩個占位符是your_database_nameyour_referenced_table_name。如果結果集為空,則表示該表不存在外鍵。

我們也可以使用簡單的IF語句包裝一下這個查詢,來對查詢結果進行判斷。

IF EXISTS (
SELECT 
TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME,
REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_SCHEMA = 'your_database_name'
AND REFERENCED_TABLE_NAME = 'your_referenced_table_name'
) SELECT 'This table has foreign keys!' as message ELSE SELECT 'This table does not have foreign keys!' as message;

上面的代碼會輸出字符串,指示該表是否存在外鍵。