Postgresql ile veritabanı tabloları diyagramı oluşturmak için araçlar? [kapalı]


172

Postgresql ile tablo diyagramları oluşturmak için ücretsiz araçlar var mı?


6
Bu soru kapandığından beri SE: Yazılım önerisini sordum: PostgreSQL veritabanından veritabanı tablo diyagramları oluşturma
Franck Dernoncourt

Yanıtlar:


184

Seviyorum schemaspy şema görselleştirmelerinin için. Sağladıkları örnek çıktıya bakın ve saçmalayın. Sekmelere dikkat edin!

JDBC sürücüsünü buradan indirmeniz gerekecek , ardından komutunuz şöyle görünmelidir:

java -jar schemaspy-6.0.0-rc2.jar -t pgsql -db database_name -host myhost -u username -p password -o ./schemaspy -dp postgresql-9.3-1100.jdbc3.jar -s public -noads

Bazen -portveritabanınızda farklı bağlantı noktası varsa seçenekleri kullanmak işe yaramaz, bu nedenle host parametresinden sonra manuel bağlantı noktası eklemeniz gerekir, örneğin:

java -jar schemaspy-6.0.0-rc2.jar -t pgsql -db database_name -host myhost:myport -u username -p password -o ./schemaspy -dp postgresql-9.3-1100.jdbc3.jar -s public -noads

graphvizGrafik istiyorsanız da yüklemeniz gerekir ( apt-get install graphvizdebian tabanlı dağıtımlar için).


6
Aslında graphviz :)
vizyoner

2
Schemaspy bu numarayı ilk denemede yaptı. Grafik oluşturma düzeni harikaydı (karmaşık tablo setimizde bile). 100 tablo aynı tabloya başvurduğunda örtüşen çizgiler olacaktır; ancak genel düzen bunu telafi eder ve mükemmel okunabilir / izlenebilirdir.
pretzels1337

4
için graphvizsadece ekleme -gv /path_to/graphvizkomutuna
AzizSM

4
Mac'te eklemek zorunda kaldım: -renderer: kuvars Bu hatayı önlemek için: -Tcmapx 'dönüş kodu 139 ile başarısız oldu
slashdottir

7
Mac'te Docker'ı kullanarak bunu çalıştırmak için:docker run -v `pwd`/diagram:/output schemaspy/schemaspy:snapshot -t pgsql --port 5432 -u postgres -db <dbname> -host docker.for.mac.localhost -p <password>
ah

31

PostgreSQL için SchemaCrawler, GraphViz yardımıyla komut satırından veritabanı diyagramları oluşturabilir. Tabloları ve sütunları dahil etmek ve hariç tutmak için normal ifadeleri kullanabilirsiniz. Ayrıca, yabancı anahtarlar tanımlanmamışsa, ortak adlandırma kurallarını kullanarak tablolar arasındaki ilişkileri çıkarabilir.


18

Bulduğum hızlı çözüm, windows için pgAdmin programının içindeydi. Araçlar menüsü altında bir "Sorgu Aracı" vardır. Sorgu Aracı içinde, veritabanı tablolarının ayrıntılarını hızlı bir şekilde gösterebilen bir Grafik Sorgu Oluşturucu bulunur. Temel görünüm için iyi


1
PgAdmin 1.20.0'da yabancı anahtarları kullanarak otomatik olarak ilişkilerin nasıl çizileceğini göremiyorum. Destekleniyor mu?
pyb

1
Güzel ipucu, her ne kadar tüm FKs sorgu birleştirmeleri kullanarak kendiniz çizmek zorunda gibi görünüyor.
Andrew Swan

6
Bu özellik edildi kaldırıldı O reimplemented olabilir 2016 yılında pgAdmin 4'te ancak 2019 itibariyle olmamıştır
Numen



5

PostgreSQL Autodoc benim için iyi çalıştı. Basit bir komut satırı aracıdır. Web sayfasından:

Bu, PostgreSQL sistem tabloları üzerinden çalışacak ve veritabanını tanımlayan HTML, Dot, Dia ve DocBook XML döndüren bir yardımcı programdır.


3
Yanıttaki bağlantı bozuk. Googled ve bulunan: github.com/cbbrowne/autodoc, ancak bakımsız görünüyor.
nelsonic

@nelsonic Gerçekten. Bağlantıları değiştirmeli miyim, değiştirmemeli miyim? Onu koruyan aynı kişi tarafından görünmüyor. Bir çatala benziyor.
Faheem Mitha

GitHub'da yazara projenin devam edip
etmediğini sordum

@nelsonic Evet, cevabı gördüm. Ben de bugs.debian.org/820208
Faheem

2
Aşağıdaki gibi nokta dosyasından bir png oluşturabilirsiniz: dot -Tpng my_database.dot -o my_database.png.
Kris

1

Eclipse içinde Clay eklentisini kullandım (örneğin Clay-Azurri). Ücretsiz sürüm, mevcut bir DB şemasının (JDBC aracılığıyla) içgözlemini ("tersine mühendislik") ve seçilen bazı tabloların şemasını sağlar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.