ErdDocs

Generator słownika danych

ErdDocs tworzy słownik danych ze zrzutu SQL, schematu Prisma albo modeli frameworka. Wszystkie tabele, kolumny, typy, wartości domyślne, indeksy i relacje są w jednym dokumencie referencyjnym. Zapiszesz go do PDF przez okno drukowania przeglądarki, a obok masz diagram ERD. Nie trzeba się rejestrować ani niczego instalować. Schemat jest analizowany w przeglądarce.

Twój schemat

Schemat poniżej ma komentarze po polsku. Przełącz na „Słownik danych”, żeby zobaczyć je w kolumnie opisu.

Od bazy danych do słownika w trzech krokach

  1. 01Wyeksportuj schemat: pg_dump --schema-only mydb > schema.sql dla PostgreSQL, mysqldump --no-data mydb > schema.sql dla MySQL albo weź swój schema.prisma z Prismy bez zmian.
  2. 02Wklej go powyżej albo upuść plik na panel. Słownik pojawia się w trakcie odczytu schematu.
  3. 03Kliknij Zapisz jako PDF, a dokument utworzy okno drukowania przeglądarki. Ono też niczego nie wysyła na serwer.

Opisy pochodzą z twojego schematu

Bazy danych mają już miejsce na opisy, ale w gotowym dokumencie mało kto je widział.

  • PostgreSQL: COMMENT ON TABLE orders IS '…' i COMMENT ON COLUMN orders.status IS '…'. pg_dump eksportuje je razem ze schematem automatycznie.
  • MySQL: klauzula COMMENT '…' przy kolumnach i tabelach w CREATE TABLE. mysqldump ją zachowuje.
  • Prisma: komentarze dokumentacyjne /// nad modelami i polami trafiają do słownika jako opisy.

Wszystkie te komentarze trafiają do kolumny „Opis”. Jeśli schemat nie ma komentarzy, tej kolumny w ogóle nie będzie. Dzięki temu w dokumencie nie ma pustych komórek.

Cała reszta jest odczytywana z samego DDL: typy w zapisanej postaci, dopuszczalność NULL, wartości domyślne, klucze, indeksy i partycje zwinięte pod tabelę nadrzędną. Niektóre zrzuty w ogóle nie deklarują kluczy obcych (Rails i Django robią to rzadko). Wtedy relacje są odtwarzane z nazw kolumn i odpowiednio oznaczane. Audytor zawsze odróżni więc klucze zadeklarowane od wywnioskowanych.

Komu potrzebny jest słownik danych

  • Audyty i zgodność z przepisami. „Prześlijcie nam słownik danych” to standardowa prośba. ErdDocs odpowiada na nią w kilka minut na podstawie wklejonego zrzutu schematu, a ręczne składanie takiego dokumentu z działającej bazy zajmuje dni.
  • Przekazanie projektu klientowi. Agencje zamykają projekty dokumentacją. ErdDocs tworzy ją jako dokument, który klient może wydrukować i zachować.
  • Wdrażanie nowych osób. Nowy inżynier czyta jeden dokument, zamiast przepytywać information_schema tabela po tabeli.

Czym jest słownik danych

To dokument, który opisuje bazę danych tabela po tabeli. Dla każdego pola podaje nazwę, typ, wartość domyślną i to, czy dopuszcza NULL. Wymienia też klucze główne i obce, indeksy oraz opis tego, co pole przechowuje. Wymaga się go w projektach na studiach, przy audytach i przy oddawaniu systemu klientowi.

Lepsze niż szablon w Excelu czy Wordzie

Szablon wypełnia się ręcznie i przestaje zgadzać się z bazą, gdy tylko ktoś zmieni tabelę. Tu wystarczy ponownie wkleić zrzut i słownik znów jest aktualny. Można go więc odtworzyć przy każdym oddaniu.

Najczęstsze pytania

Co zawiera wygenerowany słownik danych?

ErdDocs opisuje każdą tabelę. Dla każdej wymienia kolumny z typami danych dokładnie w zadeklarowanej postaci, dopuszczalność NULL i wartości domyślne. Dodaje klucze główne i obce z kolumnami, na które wskazują, ograniczenia unikalności, indeksy i oba kierunki każdej relacji. Komentarze do tabel i kolumn ze schematu stają się opisami. Tabele partycjonowane są wymienione raz, a ich partycje są podane pod tabelą nadrzędną.

Jak zrobić słownik danych dla istniejącej bazy?

Wyeksportuj schemat do SQL. Dla PostgreSQL służy do tego pg_dump --schema-only, dla MySQL mysqldump --no-data, a w SQL Server „Generuj skrypty”. Wklej wynik powyżej i przełącz na widok „Słownik danych”. Gdy wydrukujesz stronę z przeglądarki, dostaniesz PDF. Nic nie trzeba instalować, a SQL nie opuszcza twojego komputera.

Skąd w słowniku biorą się opisy?

Z samego schematu. Do kolumny „Opis” trafiają COMMENT ON TABLE i COMMENT ON COLUMN z PostgreSQL, klauzula COMMENT 'tekst' z MySQL i komentarze /// z Prismy. Jeśli schemat nie ma komentarzy, ErdDocs całkiem pomija kolumnę „Opis”, zamiast drukować ją pustą.

Czy to jest darmowe?

Diagram za darmo pokazuje do 25 tabel. Słownik w darmowej wersji opisuje w całości trzy najbardziej powiązane tabele. Kolejne są pokazane jako ramki z nazwami w miejscach, które zajęłyby w dokumencie, a reszta jest tylko policzona. To wystarczy, żeby zobaczyć dokładnie taki dokument, jaki dostaniesz. Jednorazowa płatność 9 USD odblokowuje cały słownik i cały diagram. Bez subskrypcji, bez odnawiania i bez konta.

Czy schemat jest gdzieś wysyłany?

Nie. Analiza, diagram i słownik powstają w przeglądarce, a PDF tworzy sama przeglądarka przy drukowaniu strony. Schemat nie trafia na żaden serwer, bo nie ma go gdzie wysłać.

Zobacz też