Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để tìm tất cả các bảng có khóa ngoại tham chiếu đến table.column cụ thể và có giá trị cho các khóa ngoại đó?

Của bạn đây:

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

Nếu bạn có nhiều cơ sở dữ liệu với các tên bảng / cột tương tự, bạn cũng có thể muốn giới hạn truy vấn của mình trong một cơ sở dữ liệu cụ thể:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để tránh được Deadlock của MySQL được tìm thấy khi cố gắng lấy khóa; thử bắt đầu lại giao dịch '

  2. Truyền int tới varchar

  3. Sao chép dữ liệu vào bảng mới trong MySQL

  4. Cách thay đổi định dạng ngày giờ trong MySQL

  5. Hàm MySQL COS () - Trả về Cosine của một số trong MySQL