Maison > base de données > tutoriel mysql > Comment trouver des relations de clés étrangères pour une table donnée en SQL ?

Comment trouver des relations de clés étrangères pour une table donnée en SQL ?

DDD
Libérer: 2025-01-16 22:27:15
original
831 Les gens l'ont consulté

How to Find Foreign Key Relationships for a Given Table in SQL?

Utiliser SQL pour récupérer les informations de clé étrangère d'une table

Comprendre les clés étrangères associées à une table spécifique est essentiel pour maintenir l'intégrité des données et comprendre les relations dans la base de données. Voici comment récupérer les informations de clé étrangère à l'aide de SQL :

information_schema La base de données fournit un aperçu des métadonnées de la base de données, y compris les relations de clé étrangère. Vous pouvez exploiter les tableaux table_constraints, key_column_usage et constraint_column_usage pour extraire les informations dont vous avez besoin.

Pour lister toutes les clés étrangères d'une table donnée, vous pouvez utiliser la requête suivante :

<code class="language-sql">SELECT
    tc.table_schema, 
    tc.constraint_name, 
    tc.table_name, 
    kcu.column_name, 
    ccu.table_schema AS foreign_table_schema,
    ccu.table_name AS foreign_table_name,
    ccu.column_name AS foreign_column_name 
FROM information_schema.table_constraints AS tc 
JOIN information_schema.key_column_usage AS kcu
    ON tc.constraint_name = kcu.constraint_name
    AND tc.table_schema = kcu.table_schema
JOIN information_schema.constraint_column_usage AS ccu
    ON ccu.constraint_name = tc.constraint_name
WHERE tc.constraint_type = 'FOREIGN KEY'
    AND tc.table_schema='<table_schema>'
    AND tc.table_name='<table_name>';</code>
Copier après la connexion

Remplacez <table_schema> et <table_name> par le schéma et la table réels pour lesquels vous souhaitez récupérer les informations de clé étrangère.

Si vous devez déterminer quelle table utiliser comme table étrangère, modifiez les deux dernières conditions de la requête comme suit :

<code class="language-sql">    AND ccu.table_schema='<table_schema>'
    AND ccu.table_name='<table_name>';</code>
Copier après la connexion

Cette requête vous donnera une liste détaillée de toutes les clés étrangères pour une table donnée et leurs informations associées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal