LINUX.ORG.RU

pgModeler v0.4.0 — моделирование БД PostgreSQL

 , , ,


2

1

Вчера PostgreSQL Database Modeler стал версии 0.4.0. Знакомьтесь, pgModeler — это свободный и открытый, кроссплатформенный (Qt, C++) инструмент визуального проектирования баз данных, объединяющий собой классические диаграммы сущность-связь с особенностями PostgreSQL. Созданную модель pgModeler преобразовывает в конкретную схему базы данных для СУБД версий 8.0 - 9.1. Реверсинга пока нет.

>>> Сайт программы



Проверено: tazhate ()
Последнее исправление: varchar (всего исправлений: 1)

Отлично! Выглядит не совсем страшно, вроде.

Ximen ★★★★
()

Отлично. Ищу как раз нечто подобное.

Deleted
()

Очень нужная штука.

tazhate ★★★★★
()

нормальный такой инструмент

kto_tama ★★★★★
()

C++ выбран неудачно, существуют биндинги Qt и к нормальным языкам. Хороший скринкаст на сайте не помешал бы.

alienclaster ★★★
()

Ну, наверное хорошее приложение но,

эти чудики что-либо слышали о ..configure ?

Или трахаться с компиляцией - как-бы закон жизни.

edoroe
()
Ответ на: комментарий от alienclaster

У пришельца лишний скор. Нужна срочная липосакция.

anonymous
()

Реверсинга пока нет.

Традиционное не нужно. Станет нужно, когда по фичастости дойдёт хотя бы до MySQL Workbench

anonymous
()

что за дибильная практика распространять линуксовые сборки в tar.gz вместо нормальных пакетов под основные дистрибутивы???

anonymous
()

То что проект открытый - это хорошо. По работе же использую DbVisualizer - там наверное функциональность есть на любой случай в любой реляционной БД.

orm-i-auga ★★★★★
()
Ответ на: комментарий от alienclaster

Какая в задницу разница? Автор выбрал то, что ему нравится. Написанная на python, ruby, php, lisp etc. языках +2 к статам не добавляют. Главное - чтобы оно делало то что нужно.

frozenix ★★★
()
Ответ на: комментарий от orm-i-auga

По работе же использую DbVisualizer

Штука весьма неплохая. Сам пользовал. Одна беда $$$

Хотя и свободных инструментов с разной фиченасыщеностью написанных на JAVA в сети как у дурака фантиков. Причем, цепляются любые СУДБ для которых есть jdbc драйвер.

vada ★★★★★
()
Ответ на: комментарий от anonymous

что за дибильная практика распространять линуксовые сборки в tar.gz вместо нормальных пакетов под основные дистрибутивы???

Люди заняты кодом, а не сборкой «нормальных пакетов». Пакетами пускай дистрибостроители занимаются, или сам собери.

soko1 ★★★★★
()
Ответ на: комментарий от frozenix

Автор выбрал то, что ему нравится.
C++

Так не бывает :) А разница проста - будет это г-но кто-то поддерживать (foss же, да?) или перепишет все на пейтоне %)

alienclaster ★★★
()

inherits где?

Наследование не поддерживается... т.о. для меня не применимо :(

А для простых баз, можно и руками SQL(DDL) наваять.

vbv
()
Ответ на: комментарий от alienclaster

Сложно же тебе живется с половиной мозга... Chrome, webkit, firefox, mysql, openoffice, thunderbird, inkscape, kde, их же кто-то поддерживает. Назови программы на python'e больше чем эти.

frozenix ★★★
()
Ответ на: комментарий от Aceler

Я должен задать этот вопрос — чем это лучше opensystems architect?

Пытался сделать это OSA полнофункциональным сейчас. Почуствовал себя бомжом который подходит к мусорке и копается в ней.

Этот unixodbc... Не работает. Никакой актуальной информации. Сочуствую админам.

tp_for_my_bunghole
()

Скриншоты вызывают желание поотрывать их автору разные части тела за работу под рутом...

anonymous
()

Юзаю EMS PostgreSQL Studio в вине. Лучшего продукта пока что не видел.

keeper-andrew
()
Ответ на: inherits где? от vbv

поддерживается вроде. Мой друг скрин мне кидал. Попробую нарыть... вот!

07:58:46 bonifacio: PostgreSQL Modeler (pgmodeler): @tag_bonifacio Hello! If I understood well... Yes, pgModeler implements table inheritance ( a.k.a generalization).

08:08:21 bonifacio: воть http://susepaste.org/33892983

bvn13 ★★★★★
()

Я так и не понял, где он хранит саму модель. Непосредственно, в БД, как приснопамятный Oracle Designer? В последнем меня жутко раздражала невозможность нормального высокоуровневого экспорта-импорта. Либо генерация кода, либо на печать. Ну и для особых эстетов полный бэкап БД.

Или всё же есть некие файлики (допустим, но не обязательно, XML) с моделями?

hobbit ★★★★★
()
Ответ на: комментарий от Aceler

обилием поддержки pgsql, что есть только в платных аналогах. хотя общая стабильность доставляет

tariel-x
()
Ответ на: комментарий от bvn13

Он просто повторяет поля+тип данных при создании generalization, при этом даже не копирую ограничение not null и default.

А при генерации кода просто создает самостоятельные таблицы без использования inherits, соответственно select по родителю не покажет данные из потомка. т.е. это не наследование а инструмент для создания подобных таблиц.

Что делает невозможным секционирование таблиц и аналогичные вещи.

vbv
()

Некрасиво выглядит, что связи показываются не между соответстующими полями, а тупо между таблицами. Сбивает с толку.

KRoN73 ★★★★★
()
Ответ на: комментарий от vbv

Дополнение

И вносит наследование путем: ALTER TABLE public.testc INHERIT public.testp;

Но почему нельзя это сделать в create table???

Да, это дает больший контроль над поведением подчиненной таблицы но смысл наследования, на мой взгляд, заключается в дублировании базовой таблицы с дополнением ее аттрибутами как того требует объектное поведение.

Вот если бы еще сам postgres мог бы при наследовании копировать триггера и внешние ключи.... Возможно к 10-й версии научится. :)

vbv
()
Ответ на: комментарий от alienclaster

Тебе нужно, ты и переписывай на любимым тобою языке. А потом трахайся с поддержкой своей переписьки - это же FOSS.

alex-w ★★★★★
()
Ответ на: комментарий от anonymous

А по-моему все нормально - те, кто не осилил выполнить три простых команды для сборки софтины из сорцов - не принесут проекту в начально стадии ничего, кроме глупых хотелок в стиле «сделайте мне одну кнопку, которая всё будет делать за меня».

alex-w ★★★★★
()
Ответ на: комментарий от alex-w

А как управлять потом файлами, которые выплюнет make install? А что делать, когда потом эта программа появится в репозитории дистрибутива? Вообще в курсе, зачем придумали пакетные менеджеры?

Wizard_ ★★★★★
()
Ответ на: комментарий от orm-i-auga

DbVisualizer - там наверное функциональность есть на любой случай в любой реляционной БД.

У него та же проблема, что и у pgModeler - это не средство для моделирования (проектирования) баз данных. Сейчас единственный известный мне инструмент, заточенный именно под моделирование - DeZign for Databases, но он намного более платный чем конкуренты. Но он именно экономит время, а не решает проблемы неумения пользоваться PgAdmin'ом.

kt
()
Ответ на: комментарий от Wizard_

Мда. Про /opt не в курсе? Самому пакет сделать не судьба - типа руки из жопы растут, да? Судя по вопросам Вы вообще не в курсе как собирают программы в linux.

alex-w ★★★★★
()
Ответ на: комментарий от alex-w

Они пока меня вообще не убедили, чтобы их софтину ставить даже через пакетный менеджер, а не то чтобы самостоятельно собирать пакет. Reverse Engineering там нет.

Wizard_ ★★★★★
()
Ответ на: комментарий от alex-w

Во-первых, мне чаще дорабатывать имеющуюся большую БД приходится. Во-вторых, даже если с нуля что делать, но проект сохранить забыть, оно мне наработки не импортирует и не покажет? Какая-то неудобная хрень.

Да, ещё забыл. Распространять наработки среди коллег тоже через файл данных этой программы? Просто подключиться к базе и импортировать имеющееся они не могут? В общем, смысла не вижу этим пользоваться на проектах сложнее хеллоуворлда, где накидал пару табличек, сделал экспорт и забыл.

Wizard_ ★★★★★
()
Последнее исправление: Wizard_ (всего исправлений: 1)
Ответ на: комментарий от Wizard_

Во-первых, мне чаще дорабатывать имеющуюся большую БД приходится.

Понятно. Набыдлокодили базу и оказалось, что не так - надо всё переделать.

Во-вторых, даже если с нуля что делать, но проект сохранить забыть, оно мне наработки не импортирует и не покажет? Какая-то неудобная хрень.

Можно подумать, что база у тебя создаётся прямо в инструменте моделирования, без дополнительных телодвижений а-ля нажать кнопку для создания базы. По трудозатратам нажатие этой кнопки эквивалентно нажатию кнопки «Сохранить проект». И каким образом в данном случае тебе поможет Reverse Engineering?

Да, ещё забыл. Распространять наработки среди коллег тоже через файл данных этой программы? Просто подключиться к базе и импортировать имеющееся они не могут? В общем, смысла не вижу этим пользоваться на проектах сложнее хеллоуворлда, где накидал пару табличек, сделал экспорт и забыл.

Судя по всему ты не в курсе, что именно означает фраза «проектирование базы данных».

alex-w ★★★★★
()
Ответ на: комментарий от alex-w

Набыдлокодили базу и оказалось, что не так - надо всё переделать.

Ты, видимо, с большими базами и проектами не работал. Например, у меня есть сейчас в работе база в 68 таблиц и примерно 80 Гб данных. Это веб-сервис, который постоянно развивается, наращивается функционал, поэтому структура периодически меняется.

Судя по всему ты не в курсе, что именно означает фраза «проектирование базы данных».

У меня такое ощущение, что ты над хеллоувордами всё-таки работаешь, поэтому и реверс тебе не нужен.

Wizard_ ★★★★★
()
Ответ на: комментарий от Wizard_

Ты, видимо, с большими базами и проектами не работал. Например, у меня есть сейчас в работе база в 68 таблиц и примерно 80 Гб данных.

Ты считаешь, что это много? Вот когда терабайтную плантку твоя база перейдёт, тогда можно будет говорить о зрелости твоей базы.

У меня такое ощущение, что ты над хеллоувордами всё-таки работаешь, поэтому и реверс тебе не нужен.

Да-да, я же совсем забыл, что нынче можно проектировать базу сразу с третьей стадии, а потом постоянно её перепиливать. Конечно же, таким проектировщикам позарез нужен инструмент, который им подсказывал бы, что они наворотили на предыдущей итерации.

alex-w ★★★★★
()
Ответ на: комментарий от alex-w

нынче можно проектировать базу сразу с третьей стадии, а потом постоянно её перепиливать

Этот упрёк был бы справедлив, если бы изначальная задача не менялась. Но задача-то меняется, в том и дело. Портал развивается, добавляются новые функции, новые возможности для пользователей. Под это всё нужно менять базу, это надо понимать. Вот тупой пример: допустим, мы в профиле пользователя добавляем возможность указать скайп-адрес. Для этого в таблице пользователей добавляем новое поле. Разумеется, на практике задачи сложнее этой, но принцип тот же: решаем внедрить новый функционал, для чего меняем код и базу.

Wizard_ ★★★★★
()

Отличная штука. Кто-нибудь пробовал связаться с разработчиком?

trex6 ★★★★★
()
Ответ на: комментарий от BattleCoder

Отрицание нужности запрещено высочайшим повелением.

Xellos ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.