Jakie najlepsze narzędzie do wizualizacji bazy danych

0

Witajcie,

Do tej pory większość projektów, które robiłem miały jakieś "flow" dzięki czemu każda nowa tabela, widok, procedura, funkcja, schemat itd. były opisywane i omawiane zanim powstały. Dzięki temu np GUI (w javie, delphi itd.) i backend w np PL/SQL tworzone były jednocześnie i niezależnie na podstawie dokumentów, a dopiero potem gdy było wszystko gotowe robione były testy- w dużym uproszczeniu ale developerzy najpierw omawiali z bazodanowcami co będzie potrzebne.

Obecny projekt wymagał przepisania niemal całości i stanąłem przed trudnym zadaniem opisania wszystkich zmian tym, którzy nie do końca znają bazy danych. W większości przypadków programy typu datagrid, dbvisualizer itp. robią ładny schemat bazy danych, który relacjami leci tabela po tabeli opisuje pola, typy danych itd. Ja natomiast do całego takiego diagramu potrzebowałbym jeszcze swojego rodzaju "dependencies" czyli jeśli mamy tabelę A wygenerowaną z diagramu i do niej odwołuje się widok oraz funkcja FAddA, FEditA oraz FDelA, natomiast w funkcji FAddA jest jeszcze wywołanie funkcji FGetX to chciałbym w ładny graficzny sposób wygenerować drzewo zależności tabela->funkcja1->funkcja...->funkcjaN wraz z nazwami obiektów, listą parametrów i np przykładowym wywołaniem.

Czy znacie jakieś narzędzie, które taką funkcjonalność udostępnia? Czy muszę wszystko dziergać ręcznie?

0

Oczekując na wasze propozycje skleciłem takie coś:

SELECT N.NSPNAME AS SCHEMA_NAME , P.PRONAME AS FUNCTION_NAME , 
       PG_GET_FUNCTION_ARGUMENTS(P.OID) AS ARGS,
       PG_CATALOG.OBJ_DESCRIPTION(P.OID) DESCRIPTION ,
       PG_GET_FUNCTION_RESULT(P.OID) FUNCTION_RESULT ,
       CONCAT('select * from ', N.NSPNAME,'.',P.PRONAME,'(', PG_GET_FUNCTION_ARGUMENTS(P.OID),')') CALL_SQL
  FROM PG_PROC P JOIN PG_NAMESPACE N ON N.OID = P.PRONAMESPACE
 WHERE NOT P.PROISAGG
   AND N.NSPNAME NOT LIKE 'pg_%'
   AND PG_CATALOG.OBJ_DESCRIPTION(P.OID) IS NOT NULL
 ORDER BY N.NSPNAME, P.PRONAME

dla postgresql i póki co przynajmniej część problemów mam rozwiązaną - lub raczej odwleczoną w czasie

3

Ja stworzyłem mały skrypt, który wypluwa zawartość PSQL w postaci DOT, którą można zamienić przy pomocy GraphViz w obrazek.

https://github.com/hauleth/pg-utils

0
woolfik napisał(a):

/ciach/

Czy znacie jakieś narzędzie, które taką funkcjonalność udostępnia? Czy muszę wszystko dziergać ręcznie?

Znacie, ale nie używacie PostgreSQL; chodzi o coś takiego?
https://www.red-gate.com/products/sql-development/sql-doc/
https://www.devart.com/dbforge/sql/documenter/

To może to?
https://dataedo.com/tutorials/postgresql/generate-documentation-for-postgresql-database
lub to:
https://github.com/schemaspy/schemaspy

1 użytkowników online, w tym zalogowanych: 0, gości: 1