Comment lister les clés étrangères d'une table?
Bonjour tout le monde.
Je voudrais créer une procédure qui liste :
- Toutes les clés étrangères d'une table
- Les noms des contraintes associées
- Les noms des tables reférencées par la clé, ainsi que les colonnes reférencées
J'ai essayé de combiner ces deux requêtes :
Code:
1 2 3 4 5 6
| SQL> select CONSTRAINT_NAME from dba_constraints where TABLE_NAME='NOM_TABLE' and CONSTRAINT_TYPE='R';
CONSTRAINT_NAME
------------------------------
FK_LDW_LDG1
FK_LDW_TA |
et
Code:
1 2 3 4 5
| SQL> select COLUMN_NAME from dba_cons_columns where TABLE_NAME='NOM_TABLE' and CONSTRAINT_NAME='FK_LDW_LDG1';
COLUMN_NAME
--------------------------------------------------------------------------------
ID_LDG1 |
Mais là je n'obtiens que :
- Les noms des clés étrangères et
- Les noms des contraintes associées
Je n'arrive pas à trouver une vue qui me permet de connaître les noms des tables reférencées par la clé, ainsi que les colonnes reférencées.
Ensuite je voudrais faire l'inverse de cette procédure : lister toutes les tables qui possèdent des clés étrangères associées à une table A.
Quelqu'un aurait-t-il une idée?
Merci d'avance pour vos réponses.