Domanda

Esistono buoni strumenti per visualizzare uno schema di database preesistente? Sto usando MySQL se è importante.

Attualmente sto usando MySQL Workbench per elaborare un dump di script di creazione SQL, ma è pesante, lento e un processo manuale per trascinare tutte le tabelle (il che sarebbe ok se non fosse così lento).

È stato utile?

Soluzione

Ho trovato SchemaSpy abbastanza buono: devi eseguire lo script ogni volta che lo schema cambia ma non è così un grosso problema.

Come sottolineato nei commenti, esiste anche una GUI .

Un altro strumento utile è SchemaCrawler .

Altri suggerimenti

Di solito uso SchemaSpy per farlo, ma recentemente ho trovato un articolo davvero semplice su sqlfairy che utilizza solo il file di dump per creare il grafico della struttura

Mi piace questo strumento, chiamato semplicemente DbSchema . È scritto in Java, quindi funziona su OS X, Windows o Linux. È un po 'goffo, soprattutto quando si tratta di stampa, ma per mia esperienza sono tutti così. Questo è il migliore dei tanti che ho provato. Fa diagrammi chiari e piacevoli. Prova gratuita. Costa circa $ 120 a seconda del numero di licenze acquistate.

su Mac OS X puoi utilizzare Sequel Pro

Che ne dici del SQuirreL SQL Client ? Come menzionato in un'altra domanda SO , questo programma ha la capacità di generare un semplice diagramma ER.

Hai provato a organizzare > funzione di arrangiamento automatico in MySQL Workbench. Potrebbe salvarti dallo spostamento manuale delle tabelle.

DeZign per database potrebbe essere interessante per te. È possibile decodificare e modificare i database esistenti. Dispone di una funzione di layout automatico e il layout del diagramma non viene creato quando si sincronizza il modello di dati con il database.

In

Visio professional è incorporato uno strumento di reverse engineering del database. Dovresti essere in grado di usarlo con MySQL tramite un driver ODBC. Funziona meglio quando si esegue il reverse engineering del database e quindi si creano i diagrammi trascinandoli fuori dalle tabelle e dal pannello delle viste. Trascina tutti gli oggetti chiave esterna e li inserisce anche nel diagramma.

Sto iniziando a creare il proprio script Perl basato sul modulo SQL :: Translator (GraphViz). Ecco i i primi risultati .

Un approccio diverso, ma se stai usando Ruby on Rails prova RailRoad: http://railroad.rubyforge.org

Ho cercato a lungo uno strumento decente, e preferibilmente gratuito, per Linux e ho trovato questa applicazione java abbastanza buona (finalmente !!):

http://sqldeveloper.solyp.com/

Essendo Java è multipiattaforma (lo eseguo su Linux senza problemi) e si collegherà a qualsiasi database per il quale è possibile ottenere un driver JDBC. ad es. praticamente qualsiasi database .

È abbastanza facile importare il tuo database e ottenere un visual ( ERM ) di lo schema del database. Anche la funzione di layout automatico è buona, ma tieni presente che non viene eseguita automaticamente e devi fare clic sul layout automatico " dopo aver importato i tuoi oggetti nel diagramma.

L'applicazione è anche uno strumento di amministrazione / esplorazione di database generico piuttosto buono. Come piccolo esempio, lo uso al posto di pgadmin per alcuni lavori di sviluppo di base a causa di semplici prelibatezze come la larghezza della colonna dei risultati delle query SQL dimensionate automaticamente per adattarsi al contenuto (il che mi fa impazzire in pgadmin).

Uso SQL :: Translator con DBIx :: Class

Ho comunque DBIx :: Class nella mia toolchain, e combinandolo con SQL :: Translator mi permette di convertire lo schema in molti formati diversi. Principalmente script SQL di inizializzazione per diversi server di database (che semplifica lo sviluppo su SQLite e il passaggio a Postgresql per la produzione) ma può anche generare dati GraphViz, quindi i diagrammi sono banali da generare.

ER / Studio di Embarcadero è uno dei più costosi, ma la modalità gerarchica è di gran lunga il migliore per comprendere i modelli di database. Rende la scrittura di query l'attività più semplice al mondo.

È anche incredibile con normalizzazione, denormalizzazione, deposito, documentazione, ecc.

Il rovescio della medaglia è che si tratta di uno strumento piuttosto costoso, specialmente quando si passa alla multipiattaforma.

Quando dici di visualizzare lo schema del database, ti riferisci a un documento di testo di tutte le tue tabelle, sprocs, ecc. oppure ti riferisci a una rappresentazione visiva del tuo schema e delle dipendenze?

So che hai citato MySQL (ed è molto probabile che sia supportato ora, ma non ne sono sicuro), ma RedGate ha una serie di strumenti che lo rendono piuttosto semplice. È il programma SQL Doc che può prendere l'intero database e creare per esso una documentazione completa del database. SQL Dependency Tracker può darti una rappresentazione visiva di tutte le tue tabelle e mostrare i loro collegamenti, oppure puoi caricare solo alcune tabelle o sprocs per mostrare cosa li sta usando o cosa stanno usando loro stessi.

Anni fa, usavo Data Architect. Non so se è ancora là fuori.

È possibile decodificare uno schema esistente in un diagramma di tabella relazionale.

Oppure potresti andare ancora oltre e decodificare un modello Entità-Relazione con un diagramma di accompagnamento. I diagrammi ER mi sono stati davvero utili quando ho discusso dei dati con persone che non erano né programmatori né esperti di database.

A volte erano necessarie alcune correzioni manuali al modello ER e al diagramma ER prima che fosse un utile strumento di comunicazione con le parti interessate.

SchemaBall sta effettuando la visualizzazione nel suo modo interessante.

Adminer (precedentemente phpMinAdmin), l'applicazione web per la gestione di database MySQL, disegna un semplice diagramma.

Il software stesso è simile a phpMyAdmin, ma ha più funzionalità, è leggero e viene fornito in un singolo file PHP.

alt text http://img256.imageshack.us/img256/1112/adminer .png

Ho provato DBSchema. Funzionalità interessanti, ma estremamente lente per un database con circa 75 tabelle. Inutilizzabile.

Prova PHPMyAdmin che ha delle funzioni di visualizzazione e modifica davvero interessanti. Sono abbastanza sicuro che puoi persino esportare per exel da esso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top