ErdDocs

Strumento per creare diagrammi ER online

ErdDocs non ti chiede di disegnare il diagramma entità relazione: lo genera. Incolla un dump SQL, uno schema Prisma, migrazioni o modelli ORM. In pochi secondi compaiono entità, attributi e relazioni in notazione a zampa di gallina. È gratis, senza account e senza installare nulla. Lo schema non viene caricato su alcun server.

Il tuo schema

Un catalogo di film, generato dal SQL a sinistra. Incolla sopra il tuo schema.

Diagramma ER generato da uno schema di catalogo di film: studios, people, films, film_credits, theaters e screenings, con i segni a zampa di gallina su ogni relazione.Diagramma ER generato da uno schema di catalogo di film: studios, people, films, film_credits, theaters e screenings, con i segni a zampa di gallina su ogni relazione.
Lo stesso schema del catalogo di film, esattamente come lo disegna l’esportazione SVG.

È uno strumento di disegno?

No. ErdDocs ricava il diagramma dallo schema che incolli. Non c’è una tavolozza di forme, non c’è uno strumento per le linee e non c’è una tela vuota da cui partire. Qui un diagramma ER è il risultato della lettura di uno schema, non qualcosa che componi. Incolli il testo che descrive già il tuo database, e da lì arrivano riquadri, colonne, chiavi e cardinalità. Puoi comunque trascinare le tabelle per sistemarle, e il link di condivisione conserva la disposizione. Ma tutto ciò che mostra viene dal tuo schema, e non c’è niente da ricopiare a mano.

Quasi tutto ciò che compare in questa ricerca funziona al contrario. La sezione seguente parla dell’unico caso che ErdDocs lascia agli strumenti di disegno: un database che non esiste ancora.

Disegnarlo o generarlo?

Tutto dipende da una cosa: se lo schema esiste già.

  • Lo schema non esiste ancora: disegnalo. ErdDocs legge uno schema, quindi questo è l’unico caso che non copre. Lo schema E-R nasce dalla progettazione concettuale, discutendo le entità su una lavagna o in uno strumento di disegno. Un ordine possiede il suo indirizzo o fa riferimento a uno? Questa relazione è davvero molti a molti? Una tela o una lavagna è il posto giusto per questa discussione. Quando la discussione finisce in una migrazione o in un CREATE TABLE, ErdDocs la legge da lì.
  • Lo schema esiste già: generalo. Quando le tabelle esistono davvero, sono già descritte con precisione negli statement CREATE TABLE, in uno schema Prisma, nei file di migrazione, nelle classi dei modelli ORM. Ridisegnare a mano uno schema che esiste già significa ricopiare una descrizione che hai. È tempo tuo, e il risultato è solo una seconda copia, meno affidabile. E la copia invecchia alla migrazione successiva.

Tra gli strumenti per diagrammi ER, ErdDocs è quello pensato per un database che esiste già. Il resto della categoria serve a disegnarne uno da zero. Chi cerca uno strumento ERD di solito ha già lo schema. Prende comunque uno strumento di disegno, perché è ciò che offrono i risultati di ricerca.

Cosa fa ErdDocs che gli altri strumenti per diagrammi ER non fanno

Ogni strumento qui sotto disegna un diagramma ER. La tabella confronta ciò che fa ErdDocs.

FunzioneErdDocsdbdiagramEraserdiagrams.netLucidchartSmartDrawMiroFigma FigJam
Genera da solo il diagramma dal SQL, con le tabelle e tutte le relazioni✓ Sì✓ SìIn parte: SQL come prompt per l’IAIn parte: solo tabelle, relazioni a manoIn parte: tabelle trascinate a mano sulla telaIn parte: da un CSV, non dal SQLIn parte: con l’IA o dal codice MermaidIn parte: solo dal codice Mermaid
Legge Prisma e i modelli ORM✓ Sì× NoIn parte: il codice come prompt per l’IA× No× No× No× No× No
Trova gratis le relazioni senza chiavi esterne✓ SìIn parte: IA con un piano a pagamentoNon indicato× No× No× NoIn parte: le suggerisce l’IANon indicato
Lo schema non finisce sui server del produttore✓ SìIn parte: solo nel generatore di link× No✓ Sì× No× No× No× No
Esporta un’immagine senza account✓ SìNon indicato× No✓ Sì× No× NoIn parte: solo la lavagna di base× No
Esporta in Mermaid, DBML e PlantUML✓ SìIn parte: solo DBML× No× NoIn parte: Mermaid solo tramite MCP× NoIn parte: solo Mermaid× No
Dizionario dei dati da stampare✓ SìIn parte: documento web, senza PDFNon indicato× No× No× NoNon indicato× No
Si può usare senza abbonamento✓ Sì× No× No✓ SìIn parte: piano gratuito senza importazione ERD× No× No× No

La tabella riporta quanto dicono le pagine dei produttori a novembre 2026. «Non indicato» significa che il produttore non ne parla. I nomi dei prodotti appartengono ai rispettivi proprietari.

dbdiagram è il più vicino, perché anche lui costruisce il diagramma dal SQL. Però non legge Prisma né i modelli ORM e non esporta in Mermaid o PlantUML. Le relazioni senza chiavi esterne le trova solo l’IA, e solo con un piano a pagamento. I suoi piani a pagamento sono solo in abbonamento, mentre ErdDocs si paga una volta sola.

Eraser non analizza il SQL. Lo passa a un modello di IA come prompt, quindi lo schema lascia il tuo computer. Per esportare serve un account, e tra i formati non ci sono Mermaid, DBML e PlantUML.

diagrams.net crea le tabelle dal SQL incollato, ma le relazioni tra loro si tracciano a mano. Non legge i modelli ORM e non produce un dizionario dei dati.

Lucidchart richiede un account e una query eseguita su un database attivo. Le tabelle importate vanno poi sistemate a mano sulla tela, e le relazioni arrivano solo dalle chiavi esterne dichiarate.

SmartDraw costruisce un ERD da un CSV che esporti con una query da un database attivo. Non legge un dump SQL né i modelli ORM, e funziona solo online.

Miro e Figma FigJam costruiscono un ERD con l’IA o dal codice Mermaid, non dal SQL. Lo schema resta nel loro cloud, e per esportare serve un account.

Perché un ERD disegnato invecchia e uno generato no

Un diagramma disegnato a mano è una fotografia senza alcun legame con il database. La migrazione successiva aggiunge una colonna, rinomina una tabella o elimina una chiave esterna. Il diagramma continua a mostrare la vecchia forma finché qualcuno non si ricorda che esiste, trova il file, ha una licenza dell’editor e trova il tempo. Di solito succede la settimana in cui è stato disegnato, e poi mai più. Molti repository contengono un diagramma che contraddice lo schema che gli sta accanto.

Un diagramma generato non ha una versione da tenere allineata. È una vista sul testo dello schema. Rigenerarlo sul dump attuale richiede pochi secondi, e il risultato non può che essere corretto. Puoi rigenerarlo a ogni rilascio. Dallo stesso testo incollato puoi esportare Mermaid per il README, SVG per il sito della documentazione o un dizionario dei dati completo per la consegna.

Cosa puoi incollare?

Dieci formati, riconosciuti da soli. Incolli il file così com’è, e lo strumento capisce cosa sta leggendo.

  • SQL: script di PostgreSQL, MySQL, SQL Server e SQLite così come li scrivono i server e i loro strumenti, per esempio pg_dump, mysqldump, MySQL Workbench o «Genera script» di SSMS. Vengono letti i backtick, AUTO_INCREMENT, i batch GO di SSMS e le chiavi dichiarate da un ALTER TABLE successivo. Per sapere cosa contiene un dump, vedi la pagina su MySQL.
  • Linguaggi di schema: Prisma, DBML, Mermaid e PlantUML. Sono già diagrammi in forma di testo e vanno solo disegnati.
  • Modelli ORM: classi Django, SQLAlchemy, Sequelize e TypeORM, più le migrazioni Laravel. Sono proprio quelli che non hanno mai avuto un diagramma, perché il database è definito nel codice dell’applicazione.

La pagina dei formati li elenca tutti, con ciò che viene letto e ciò che viene saltato di proposito.

Il risultato si esporta anche in Mermaid, DBML, PlantUML o SQL, per esempio per un README o per la documentazione.

Cosa mostra il diagramma generato?

Un riquadro per tabella, con dentro le colonne e i loro tipi reali, le chiavi segnate e la notazione a zampa di gallina a entrambe le estremità di ogni relazione. Così il diagramma dichiara la cardinalità invece di lasciarla intuire. Nel catalogo di film qui sopra, film_credits è una tabella ponte con colonne proprie. È così che appare davvero un molti a molti quando arriva in un database.

Molti progetti Rails, Django o Laravel non dichiarano chiavi esterne nel database. ErdDocs deduce allora la relazione dal nome della colonna: un film_id fa riferimento a films, un user_id a users. La disegna tratteggiata, così non si confonde con quelle che il database impone. Questo passaggio conta soprattutto sui database di produzione ereditati, e la pagina sullo strumento per diagrammi di database spiega perché.

Domande frequenti

È un programma per ERD in cui trascino i riquadri?

No. ErdDocs genera il diagramma da uno schema che incolli, quindi non ci sono una tavolozza di forme né uno strumento per le linee, e la scelta è voluta. Puoi comunque trascinare le tabelle per sistemare la disposizione, e il link di condivisione la conserva. Ma niente è disegnato a mano: ogni riquadro e ogni linea vengono dal SQL.

Conviene disegnare l’ERD a mano invece di generarlo?

ErdDocs genera l’ERD quando le tabelle esistono davvero. È il caso in cui si trova quasi sempre chi lo cerca, perché di solito lo schema esiste prima che qualcuno ne chieda un’immagine. L’unico caso che salta è un database non ancora costruito. Prima che qualcuno scriva una migrazione, il modello dei dati si discute disegnando le entità su una tela, e per quello servono gli strumenti di disegno generici. Quando il disegno diventa una migrazione o un CREATE TABLE, incollalo qui e il diagramma nasce dallo schema stesso.

Cosa posso incollare?

Dieci formati: SQL di PostgreSQL, MySQL, SQL Server e SQLite, schemi Prisma, DBML, Mermaid, PlantUML, modelli Django, SQLAlchemy e Sequelize, entità TypeORM e migrazioni Laravel. Il formato viene riconosciuto da solo. Incolla il file così com’è, senza ripulirlo e senza esportarlo prima.

Servono un account, un’installazione o una connessione al database?

Nessuna delle tre. Il parser è JavaScript che gira nel tuo browser. Non c’è un server a cui collegarsi né uno schema da caricare. I nomi di tabelle e colonne non lasciano il tuo computer. Apri la pagina, incolla, e il diagramma è lì.

Cosa succede quando lo schema cambia?

Incolli il nuovo dump e il diagramma si rigenera in pochi secondi. Un ERD disegnato lo deve correggere chi si ricorda che esiste, quindi comincia a divergere dal database alla migrazione successiva. Uno generato non può divergere, perché nasce ogni volta dallo schema.

È gratis?

Sì, per il diagramma. Gli schemi fino a 25 tabelle si disegnano per intero, senza account. Le esportazioni in PNG, SVG, Mermaid, DBML, PlantUML e SQL sono gratuite. Anche gli schemi più grandi vengono analizzati completamente, ma le tabelle oltre il limite restano bloccate. Un pagamento unico di 9 USD toglie il limite e sblocca il dizionario dei dati.

Va bene per un esame o un progetto di basi di dati?

Sì. Scrivi le tabelle in SQL e incollale qui. Ottieni il diagramma ER con le cardinalità e in più il dizionario dei dati da stampare. Se il docente chiede lo schema concettuale prima delle tabelle, quello va progettato prima. ErdDocs disegna lo schema logico, cioè le tabelle già scritte.

Vedi anche