programing

요소(기본 키)가 데이터베이스의 다른 위치에 포함되어 있는지 확인합니다.

lastmoon 2023. 8. 30. 21:58
반응형

요소(기본 키)가 데이터베이스의 다른 위치에 포함되어 있는지 확인합니다.

요소가 어떤 테이블에 관련되어 있는지 알 수 없는 다른 데이터베이스 테이블에 외부 키로 관련되어 있는지 확인하고 싶습니다.
지금은 다음 쿼리를 사용하여 요소가 외부 키로 표시되는 테이블을 찾을 수 있었습니다.

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;

요약하자면, 저는 제 질문에 해당 항목이 외국 키로 존재하는 테이블만 보여주셨으면 합니다.요소가 해당 테이블에 없는 경우(예: 해당 테이블이 비어 있는 경우), 해당 요소를 검색할 필요가 없습니다.

잘 부탁드립니다.

다음 쿼리가 작동합니다.

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

언급URL : https://stackoverflow.com/questions/72992350/check-if-an-element-primary-key-is-involved-somewhere-else-in-the-database

반응형