Hallo und erstmal vielen Dank an Jens.
Dein Tipp hat mir entscheidend weitergeholfen. Inzwischen habe ich zwar eine Menge visualisierende Tools gefunden, aber eines, dass meine Wünsche 100% erfüllt leider noch nicht.
Inzwischen habe ich meine PL/SQL Kenntnisse etwas erweitert und mir folgende Behelfslösung gebastelt:
/*###############################################################################
Name: PROC_USER_DEPENDENCIES
Aufgabe: stellt die Abhängigkeiten zwischen Tabellen und Views dar
Author: Christian Graf
Datum: 2006-12-19
###############################################################################*/
DECLARE
// DIESE VARIABLE ÄNDERN UM ABHÄNGIGKEITEN DARZUSTELLEN:
qry_name VARCHAR2(50) := ‚QRY_MAINDATA‘;
PROCEDURE showUsedBy (objName IN VARCHAR2, tiefe IN NUMBER DEFAULT ‚0‘) IS
BEGIN
FOR resultrow IN (SELECT NAME FROM user_dependencies WHERE REFERENCED_NAME = objName)
LOOP
FOR i IN 1…tiefe LOOP
dbms_output.put(’ ’ );
END LOOP;
dbms_output.put_line(resultrow.NAME);
showUsedBy(resultrow.NAME, tiefe + 1);
END LOOP;
END;
PROCEDURE showUses (objName IN VARCHAR2, tiefe IN NUMBER DEFAULT ‚0‘) IS
BEGIN
FOR resultrow IN (SELECT REFERENCED_NAME FROM user_dependencies WHERE NAME = objName)
LOOP
FOR i IN 1…tiefe LOOP
dbms_output.put(’ ’ );
END LOOP;
dbms_output.put_line(resultrow.REFERENCED_NAME);
showUses(resultrow.REFERENCED_NAME, tiefe + 1);
END LOOP;
END;
BEGIN
dbms_output.put_line(’’);
showUses(qry_name, 1);
dbms_output.put_line(’’);
showUsedBy(qry_name, 1);
END;
Vielleicht hilft das ja mal jemandem, der auf der Suche nach etwas ähnlichem ist.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]