ErdDocs

Wklej SQL, dostań diagram ERD i słownik danych

ErdDocs tworzy diagram związków encji ze schematu, który już masz. Wklej zrzut SQL, schemat Prisma albo migracje swojego frameworka. Dostaniesz interaktywny diagram ERD i słownik danych gotowy do druku. Opisuje on wszystkie tabele, kolumny, typy i relacje. Nie trzeba się rejestrować ani niczego instalować. Schemat jest analizowany w przeglądarce i nie opuszcza twojego komputera.

Twój schemat

Nic nie jest wysyłane. Schemat zostaje w tej przeglądarce. Ostatnio wklejony schemat wróci, gdy znowu otworzysz kartę. Zniknie dopiero wtedy, gdy wyczyścisz dane strony.

Jak to działa

Żeby zamienić zrzut SQL w diagram ERD i słownik danych:

  1. 01Wyeksportuj schemat: pg_dump --schema-only dla PostgreSQL, mysqldump --no-data dla MySQL.
  2. 02Wklej go powyżej albo upuść plik .sql prosto na panel.
  3. 03Czytaj diagram. Najedź na tabelę, a jej relacje się podświetlą. Kliknięcie przypina podświetlenie.
  4. 04Przełącz na „Słownik danych”. Znajdziesz tam kolumny, typy, wartości domyślne, indeksy i relacje. Ten widok możesz wydrukować do PDF.

Zrobione dla prawdziwych zrzutów

Produkcyjny schemat to nie schludna lista instrukcji CREATE TABLE, dlatego parser został przetestowany na prawdziwych: pagila, sakila, GitLab, Discourse, WordPress, PrestaShop. Jak dobrze czytany jest każdy format, zmierzone na 89 publicznych schematach.

Diagram związków encji schematu sklepu internetowego: tabele customers, orders, products i order_items połączone liniami relacji w notacji kurzej stopki, wygenerowany z SQLDiagram związków encji schematu sklepu internetowego: tabele customers, orders, products i order_items połączone liniami relacji w notacji kurzej stopki, wygenerowany z SQL
Schemat sklepu z góry strony, dokładnie tak, jak rysuje go eksport.
  • Tabele partycjonowane zostają jedną tabelą. Zrzut z 55 miesięcznymi partycjami tabeli payment daje jedną kartę payment, a nie 56.
  • Brakujące klucze obce są odtwarzane. Projekty w Rails i Django często nie deklarują w bazie żadnych. Nazwy kolumn i tak mówią, co na co wskazuje, a takie relacje są rysowane linią przerywaną.
  • Jedna zła instrukcja nie psuje całego pliku. Wszystko, czego nie da się odczytać, jest pomijane i zgłaszane, a reszta schematu i tak się rysuje.
  • Duże schematy nigdy nie są obcinane. Wszystko, co wkleisz, jest analizowane i rozmieszczane, także schematy z setkami tabel.

Dlaczego ErdDocs

  • Dokumentacja, nie tylko rysunek. Słownika danych naprawdę wymagają prowadzący, audytorzy, klienci i nowe osoby w zespole.
  • Bez rejestracji i instalacji. Nie trzeba konta, żeby zobaczyć wynik, ani niczego dodawać do projektu.
  • Płacisz raz. Jedna cena zamiast subskrypcji, którą łatwo zapomnieć anulować.
  • Schemat zostaje na twoim komputerze. Analiza działa w przeglądarce i schemat nie trafia na żaden serwer. Możesz wkleić produkcyjny schemat bez obaw o wyciek struktury bazy danych.

Konwersja między formatami

ErdDocs czyta dziesięć formatów i eksportuje do ośmiu, wszystko w panelu powyżej. Każda z tych stron opisuje jedną konwersję i ma już wczytany przykład. Strony są po angielsku:

Najczęstsze pytania

Czym jest słownik danych?

To dokument referencyjny bazy danych. W jednym miejscu opisuje wszystkie tabele i kolumny: typ danych, czy dopuszczają NULL, wartość domyślną, indeksy i relacje. Wymaga się go w projektach na studiach, przy audytach i przy oddawaniu systemu klientowi. ErdDocs tworzy go z wklejonego schematu, od razu do druku.

Czy mój schemat jest gdzieś wysyłany?

Nie. Analiza i rysowanie odbywają się w całości w przeglądarce. Twój SQL nie opuszcza komputera i nie ma żadnego konta do założenia. ErdDocs celowo nie łączy się z działającą bazą, więc nie musisz podawać żadnych danych logowania. Strona liczy odsłony analityką bez plików cookie. Widzi ona tylko, która strona została otwarta, a nic z tego, co na niej jest.

Jakie bazy danych i formaty są obsługiwane?

SQL z PostgreSQL, MySQL, SQL Server i SQLite. Może to być wynik pg_dump z instrukcjami ALTER TABLE ONLY ... ADD CONSTRAINT, mysqldump, skrypt wygenerowany w SSMS, razem z partiami GO i nazwami w nawiasach kwadratowych, albo wynik polecenia .schema w SQLite. Dziewięć kolejnych formatów jest czytanych bez zmian: schematy Prisma, DBML, Mermaid erDiagram, PlantUML, modele Django, SQLAlchemy i Sequelize, encje TypeORM i migracje Laravela. W Prismie nazwy z @map, pola relacji i niejawne tabele łączące dla relacji wiele do wielu są zamieniane na tabele, które naprawdę powstaną w bazie. Format jest rozpoznawany na podstawie wklejonego tekstu, a jeśli narzędzie się pomyli, możesz wybrać go ręcznie.

Moja baza nie ma kluczy obcych. Czy diagram będzie pusty?

Nie. Projekty w Rails, Django czy Laravel często trzymają relacje tylko w kodzie. ErdDocs czyta też konwencję nazw, więc kolumna user_id łączy się z tabelą users. Takie relacje są rysowane linią przerywaną, żeby nie pomylić ich z zadeklarowanymi w bazie.

Czym to się różni od dbdiagram, drawSQL czy sqltoerdiagram?

Za ErdDocs płacisz raz. Płatne plany dbdiagram i drawSQL to wyłącznie subskrypcje. ErdDocs czyta Prismę, modele Django, SQLAlchemy, Sequelize i TypeORM oraz migracje Laravela. Ani dbdiagram, ani drawSQL tego nie potrafią. Żadne z nich nie eksportuje też do Mermaid ani PlantUML. drawSQL bez konta nie wyeksportuje nawet obrazka. DBML można do niego tylko zaimportować, wyeksportować już nie. W dbdiagram relacje bez kluczy obcych znajduje asystent AI w płatnym planie. ErdDocs znajduje je po nazwach kolumn, za darmo. sqltoerdiagram nie ma słownika danych do druku. Partycje ze zrzutu rysuje jako osobne tabele, a ErdDocs zwija je pod tabelę nadrzędną. sqltoerdiagram nie czyta migracji Laravela, a przy Django i TypeORM każe najpierw wygenerować SQL z modeli.

Ile to kosztuje?

Oglądanie diagramów i eksport obrazów są darmowe i nie wymagają konta. Schematy do 25 tabel są rysowane w całości. Większe też są analizowane w całości, ale tabele ponad limit pozostają zablokowane. Odblokowuje je jednorazowa płatność 9 USD, w której jest też pełny słownik danych. Paddle dolicza podatki przy płatności, tam gdzie obowiązują.

Czy można narysować diagram ERD online prosto z kodu SQL?

Tak, właśnie do tego służy narzędzie. Wklej instrukcje CREATE TABLE z PostgreSQL, MySQL, SQL Server albo SQLite. Możesz wkleić cały zrzut, z ALTER TABLE i indeksami. Narzędzie czyta też Prismę, DBML, Mermaid, PlantUML, modele Django, SQLAlchemy, Sequelize, TypeORM i migracje Laravela.

Więcej