第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何查找具有引用特定table.column的外鍵并具有這些外鍵值的所有表?

如何查找具有引用特定table.column的外鍵并具有這些外鍵值的所有表?

翻翻過去那場雪 2019-08-06 13:34:30
如何查找具有引用特定table.column的外鍵并具有這些外鍵值的所有表?我有一個表,其主鍵在其他幾個表中作為外鍵引用。例如:  CREATE TABLE `X` (     `X_id` int NOT NULL auto_increment,     `name` varchar(255) NOT NULL,     PRIMARY KEY  (`X_id`)   )   CREATE TABLE `Y` (     `Y_id` int(11) NOT NULL auto_increment,     `name` varchar(255) NOT NULL,     `X_id` int DEFAULT NULL,     PRIMARY KEY  (`Y_id`),     CONSTRAINT `Y_X` FOREIGN KEY (`X_id`) REFERENCES `X` (`X_id`)   )   CREATE TABLE `Z` (     `Z_id` int(11) NOT NULL auto_increment,     `name` varchar(255) NOT NULL,     `X_id` int DEFAULT NULL,     PRIMARY KEY  (`Z_id`),     CONSTRAINT `Z_X` FOREIGN KEY (`X_id`) REFERENCES `X` (`X_id`)   )現(xiàn)在,我不知道數(shù)據(jù)庫中有多少表包含X中的外鍵,如表Y和Z.是否有可用于返回的SQL查詢:包含外鍵到X的表的列表和哪些表實際上在外鍵中有值
查看完整描述

3 回答

?
慕神8447489

TA貢獻1780條經(jīng)驗 獲得超1個贊

干得好:

USE information_schema;SELECT *FROM
  KEY_COLUMN_USAGEWHERE
  REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id';

如果您有多個具有相似表/列名稱的數(shù)據(jù)庫,您可能還希望將查詢限制為特定數(shù)據(jù)庫:

SELECT *FROM
  KEY_COLUMN_USAGEWHERE
  REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id'
  AND TABLE_SCHEMA = 'your_database_name';


查看完整回答
反對 回復 2019-08-06
?
陪伴而非守候

TA貢獻1757條經(jīng)驗 獲得超8個贊

MySQL 5.5參考手冊:“InnoDB和FOREIGN KEY約束”

SELECT
  ke.REFERENCED_TABLE_SCHEMA parentSchema,
  ke.referenced_table_name parentTable,
  ke.REFERENCED_COLUMN_NAME parentColumnName,
  ke.TABLE_SCHEMA ChildSchema,
  ke.table_name childTable,
  ke.COLUMN_NAME ChildColumnNameFROM
  information_schema.KEY_COLUMN_USAGE keWHERE
  ke.referenced_table_name IS NOT NULL
  AND ke.REFERENCED_COLUMN_NAME = 'ci_id' ## Find Foreign Keys linked to this Primary KeyORDER BY
  ke.referenced_table_name;


查看完整回答
反對 回復 2019-08-06
?
蕭十郎

TA貢獻1815條經(jīng)驗 獲得超13個贊

此解決方案不僅會顯示所有關系,還會顯示約束名稱,這在某些情況下是必需的(例如,丟棄約束):

SELECT
    CONCAT(table_name, '.', column_name) AS 'foreign key',
    CONCAT(referenced_table_name, '.', referenced_column_name) AS 'references',
    constraint_name AS 'constraint name'FROM
    information_schema.key_column_usageWHERE
    referenced_table_name IS NOT NULL;

如果要檢查特定數(shù)據(jù)庫中的表,請?zhí)砑右韵聝热荩?/p>

AND table_schema = 'database_name';


查看完整回答
反對 回復 2019-08-06
  • 3 回答
  • 0 關注
  • 635 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號