From 3e4ef0f93914c92f6e4dd499eb9106066247b406 Mon Sep 17 00:00:00 2001
From: "p.belezov"
Date: Thu, 16 Jan 2025 12:35:38 +0800
Subject: [PATCH] 'initial-commit'
---
MySQL/all_foreign_keys_to_table_or_column.md | 27 +++++++++++++++++++
.../all_foreign_keys_to_table_or_column.sql | 21 +++++++++++++++
2 files changed, 48 insertions(+)
create mode 100644 MySQL/all_foreign_keys_to_table_or_column.md
create mode 100644 MySQL/sql/all_foreign_keys_to_table_or_column.sql
diff --git a/MySQL/all_foreign_keys_to_table_or_column.md b/MySQL/all_foreign_keys_to_table_or_column.md
new file mode 100644
index 0000000..0c2e616
--- /dev/null
+++ b/MySQL/all_foreign_keys_to_table_or_column.md
@@ -0,0 +1,27 @@
+# Find all tables whose foreign key refers to the table/column
+[SQL File](/sql/all_foreign_keys_to_table_or_column.sql)
+
+## By table
+
+```
+SELECT
+ TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
+FROM
+ INFORMATION_SCHEMA.KEY_COLUMN_USAGE
+WHERE
+ REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND
+ REFERENCED_TABLE_NAME = '';
+```
+
+## By table column
+
+```
+SELECT
+ TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
+FROM
+ INFORMATION_SCHEMA.KEY_COLUMN_USAGE
+WHERE
+ REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND
+ REFERENCED_TABLE_NAME = '' AND
+ REFERENCED_COLUMN_NAME = '';
+```
\ No newline at end of file
diff --git a/MySQL/sql/all_foreign_keys_to_table_or_column.sql b/MySQL/sql/all_foreign_keys_to_table_or_column.sql
new file mode 100644
index 0000000..58b937d
--- /dev/null
+++ b/MySQL/sql/all_foreign_keys_to_table_or_column.sql
@@ -0,0 +1,21 @@
+# Find all tables whose foreign key refers to the table/column
+
+# BY TABLE
+SELECT
+ TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
+FROM
+ INFORMATION_SCHEMA.KEY_COLUMN_USAGE
+WHERE
+ REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND
+ REFERENCED_TABLE_NAME = '';
+
+
+# BY TABLE COLUMN
+SELECT
+ TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
+FROM
+ INFORMATION_SCHEMA.KEY_COLUMN_USAGE
+WHERE
+ REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND
+ REFERENCED_TABLE_NAME = '' AND
+ REFERENCED_COLUMN_NAME = '';
\ No newline at end of file