Інструменти для генерації діаграм таблиць бази даних за допомогою Postgresql? [зачинено]


172

Чи є якісь безкоштовні інструменти для генерації діаграм таблиць за допомогою Postgresql?


6
Оскільки це питання було закрито, я поцікавився рекомендацією щодо програмного забезпечення SE: Створення діаграм таблиць бази даних з бази даних PostgreSQL
Франк Дернонкурт

Відповіді:


184

Я люблю схему для візуалізації схем. Подивіться на вихідний зразок, який вони надають, і слюни. Зверніть увагу на вкладки!

Вам потрібно буде завантажити тут драйвер JDBC , тоді ваша команда повинна виглядати приблизно так:

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

Іноді використання параметрів -portне працюватиме, якщо у вашій базі даних є інший порт, тому вам потрібно додати ручний порт після параметра хоста, наприклад:

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

Вам також потрібно буде встановити graphviz, якщо ви хочете графіки ( apt-get install graphvizдля дистрибутивів на основі debian).


6
Насправді це graphviz :)
прозорливий

2
Schemaspy зробив цю хитрість з першої спроби. Макет генерувального графіка був чудовим (навіть у нашому складному наборі таблиці). Коли 100 таблиць посилаються на ту саму таблицю, будуть перекриваються рядки; однак загальний макет компенсує це і є абсолютно розбірливим / простежуваним.
pretzels1337

4
для graphvizпросто додайте -gv /path_to/graphvizдо команди
AzizSM

4
На mac мені довелося додати: -renderer: quartz, щоб уникнути цієї помилки: -Tcmapx 'не вдалося повернути код 139
slashdottir

7
Щоб запустити це за допомогою Docker на mac:docker run -v `pwd`/diagram:/output schemaspy/schemaspy:snapshot -t pgsql --port 5432 -u postgres -db <dbname> -host docker.for.mac.localhost -p <password>
ах

31

SchemaCrawler для PostgreSQL може генерувати діаграми бази даних з командного рядка за допомогою GraphViz. Ви можете використовувати регулярні вирази для включення та виключення таблиць і стовпців. Він також може зробити висновок про зв'язки між таблицями, використовуючи загальні умови іменування, якщо не визначені сторонні ключі.


18

Швидке рішення, яке я знайшов, знаходився всередині програми pgAdmin для Windows. У меню Інструменти є "Інструмент запитів". Всередині Інструменту запитів знаходиться графічний конструктор запитів, який може швидко показати деталі таблиць бази даних. Добре підходить для основного виду


1
Я не бачу, як автоматично малювати зв’язки за допомогою сторонніх ключів у pgAdmin 1.20.0. Це підтримується?
піб

1
Хороший підказник, хоча, здається, вам доведеться самостійно намалювати всі ФК за допомогою приєднання запитів.
Ендрю Лебедь

6
Ця функція була видалена в PgAdmin 4 в 2016 році може бути перевизначений , але не було , як в 2019
ноумен


9

Щойно знайдений http://www.sqlpower.ca/page/architect через Посібник спільноти Postgres, згаданий Франком Хейкенсом. Він може легко створити діаграму, а потім дозволяє налаштувати роз'єми!


Я не міг змусити це працювати; продовжував отримувати ArrayIndexOutOfBoundException
FuriousFolder

5

PostgreSQL Autodoc добре працював для мене. Це простий інструмент командного рядка. З веб-сторінки:

Це утиліта, яка працюватиме через системні таблиці PostgreSQL і повертає HTML, Dot, Dia та DocBook XML, яка описує базу даних.


3
Посилання у відповіді порушено. Знайдено в Google і знайдено: github.com/cbbrowne/autodoc, але, здається, не підтримується.
nelsonic

@nelsonic Дійсно. Чи слід міняти посилання, чи ні? Схоже, це не та сама людина, яка його підтримувала. Якась вилка, схоже.
Faheem Mitha

Я запитав автора в GitHub, чи підтримується проект: github.com/cbbrowne/autodoc/issues/2
nelsonic

@nelsonic Так, я побачив відповідь. Я також розмістив bugs.debian.org/820208
Faheem Mitha

2
Ви можете створити PNG з файлу точок як такі: dot -Tpng my_database.dot -o my_database.png.
Кріс

1

Всередині Eclipse я використовував плагін Clay (колишній Clay-Azurri). Безкоштовна версія дозволяє представити існуючу схему БД (через JDBC) і створити схему деяких обраних таблиць.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.