mariadb 检查元素(主键)是否涉及数据库中的其他位置

eeq64g8w  于 2022-11-08  发布在  其他
关注(0)|答案(1)|浏览(142)

我想检查一个元素是否作为外键包含在另一个数据库表中,而不知道它包含在哪个表中。
现在,我只能使用下面的查询来找出哪些表中的元素是外键:

SELECT TABLE_NAME
FROM information_schema.REFERENTIAL_CONSTRAINTS 
WHERE REFERENCED_TABLE_NAME = 'funzione_operativa_sedi_e_recapiti';

该表的组成如下:

CREATE TABLE IF NOT EXISTS funzione_operativa_sedi_e_recapiti (
   id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
   nome VARCHAR(255) NOT NULL UNIQUE,
   descrizione VARCHAR(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

总而言之,我希望查询只显示该项目作为外键存在的表。如果该元素不在这些表中(例如,这些表为空),则不需要检索它们。
先谢谢你。

r9f1avp5

r9f1avp51#

以下查询将起作用:

SELECT 
  table_name, column_name     
FROM
  information_schema.key_column_usage
WHERE
  referenced_table_name = <table name>
  and referenced_column_name = <desired column>

相关问题