Визуализация БД

StalkerClasses

Новичок
Есть БД со связями. Каждая таблица (модель) описаны определенным образом.
Т.е. есть возможность понимать, что эта колонка связь вида 1кМ, эта связь вида МкМ.

Есть ли какие-то сервисы, программы или инструменты в которые можно загрузить структуру БД (XML,Json - могу сгенерировать нужный формат а также нужную структуру) что бы визуально увидеть всю БД?

Как есть например яндекс.маркет - в него вгружается XML с определенной структурой. Аналогичную структуру есть возможность сгенерировать для сервиса (программы).
 

AnrDaemon

Продвинутый новичок
Если для сферической БД в вакууме, то не знаю.
Для MySQL есть WorkBench.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Зачем тебе утилита для визуализации? Какую проблему ты решаешь?
 

StalkerClasses

Новичок
У меня есть маленькие модели - до 5 таблиц.
Есть модели побольше - до 15 и больше таблиц.

Каждая из таблиц в модели описана по схожим принципам.
Каждый раз переключаясь приходится вспоминать что и как - даже когда 5 табличек.

Приведу пример - у меня есть модель файлов:
1) Файл (имеет связь к хранилищу, имеет связь к описанию)
2) Файл (описание) - он же переводы на другие языки
3) Файл (ссылка на файл в записи)
(имеет связь к записи, связь к файлу)
4) Хранилище (точка доступа к файлу)


Мне периодически приходится вспоминать что за чем идет.
А так распечатал виртуальную диаграмму и она всегда под рукой.
 

StalkerClasses

Новичок
Вот эти два очень заинтересовали.
Особенно первый, т.к. ничего ставить не нужно. Мне очень даже подходит.

Я создал простой пример страна, город.
Код:
@startuml
class Country {
 -id
 -title
}
class City {
 -id
 -title
 #country_id
}
@enduml

А как их теперь соединить?
 

StalkerClasses

Новичок
Соединить получилось:
Код:
@startuml
class Country {
  Sample table.
  ==
<$primary> int(10)
-id int(10) -- A comment
-title int(10) varchar(255) -- A comment
}
class City {
  Sample table.
  ==
<$primary> int(10)
-id int(10) -- A comment
-title varchar(255) -- A comment
.. Comment line, ignored ..
#country_id int(10) -- A comment
}

Country "1" *-- "M" City: country_id
Country o-- City: aggregation
@enduml
 
Последнее редактирование:

StalkerClasses

Новичок
Еще нашел 1 вариант:

Мне очень понравилось что здесь визуально показано более развернуто связи.
1401

Хотел бы примерно также сделать в плантом.
 

StalkerClasses

Новичок
Очень сдоровская штука плантом.
Но вставляю код - 136 строк - он рисует только половину, вторая половина оказывается обрезанной. Картинка получается очень большой. Можно это как-то обойти? Видимо у картинки которой он генерирует есть ограничения по ширине и высоте.

Больше подошел тот вариант что скинул "WMix"
 

StalkerClasses

Новичок
хз, такого небыло, большие диаграммы (по 10-30 моделей) рисовал
С этим разобрался - просто уменьшил кол-во выводимых данных в одну табличку.
Выводятся колонки только которые имеют связи.

Но появился еще 1 вопрос. Сгенерированный Uml код помещяю в тэг <pre>Uml</pre>.
Можно ли как-то сделать форму отправки и делать сразу submit на http://www.plantuml.com/plantuml/uml/?

И есть еще вопрос - вот есть картинка:

На веточках идет подпись user_id.
Можно ли сделать подпись из двух строк?

WMix - спасибо большое - мне очень этот инструмент подошел.
 
Последнее редактирование:

WMix

герр M:)ller
Партнер клуба
зачем тебе это делать, скачай jar, поставь jdk и генери локально


Код:
@startuml
A "1" *-- "many" B : "line\nsecondline"
@enduml
 
Последнее редактирование:

StalkerClasses

Новичок
зачем тебе это делать, скачай jar, поставь jdk и генери локально


Код:
@startuml
A "1" *-- "many" B : "line\nsecondline"
@enduml
Появилось еще два вопроса про функционал данного сервиса.
1) Возможно ли в строке вставить 1 символ (букву) в конце по правому краю. По умолчанию вся строка выравнивается по левому краю.
2) Визуально связь отображается от прямоугольника к прямоугольнику, но не от места от куда она идет (не от строки) - возможно ли нарисовать линии от строки к строке?
 
Сверху