LINUX.ORG.RU

Дизайн схемы данных


0

1

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

попробовал Open System Architect - все вроде ок,но русский он не любит и справно его херит при сохранении.и так меня более чем устраивает возможность генерации sql кода на основе модельки

спасибо


Я пользую Power Architect Community. Глюки есть, но в принципе обходятся. База на порядка сотни таблиц с хитрыми взаимосвязями ведется нормально.

Сразу на что напорешься: если генерировать индексы, то он будет пытаться сделать их для primary keys, хотя postgresql автоматом их создает. При генерации будешь получать ошибки. Просто игнорируй их и все нормально.

vega
()

Кстати, если база уже есть. Мою Power Architect неплохо вытянул в модель для последующего редактирования.

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

у меня нуб вопрос - если в главной таблице тип поля первичного ключа SERIAL , то какой он должен быть в подчиненной? тоже SERIAL? или INT? чет до меня слабо доходит...или вообще ну нахрен эти автоинкрименты,как то читал разгромную статью про них

wozap
() автор топика
Ответ на: комментарий от vega

подскажи плз- вот элементарный пример схемы из ACCESS.не совсем понимаю почему архитект странно извращается


http://s16.radikal.ru/i190/1105/a3/f4741c317c14.png в access

а вот так в этой проге

http://s54.radikal.ru/i145/1105/73/ef8d074a43a1.png


получается что когда я связал таблицы по ID_тип_родственника он мне запихнул зачем-то первичный ключ в таблицу родственники.с чего бы он так делает? иль я чет не так делаю?

вот файлик http://rghost.ru/7905821

wozap
() автор топика
Ответ на: комментарий от wozap

а, и откуда там взялся ID_человека ? он должен быть первичным только в главной таблице веть.Можно канечно галочку убрать-но все равно что-то тут не то

wozap
() автор топика
Ответ на: комментарий от wozap

Отношения бывают identifying и non-identifying. Ты создал первое, а оно подразумевает что PK первой таблицы входит в PK второй. Вот Architect тебе поле в PK и добавил. Надо было делать non-identifying связь.

И это, ты что-ли переделываешь существующий проект? Мой совет: даже в этом случае лучше переделай русские имена на английские. Стиль ну просто очень не очень. Да и где еще проблемы вылезут, фиг знает. На русском лучше комменты к полям пиши.

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

переделыванием проекта это сложно назвать.просто для диплома решил отойти от майкрософта (access и sql сервер) и решил сделать на опенсорце. а русские поля мне нужны для редактора фильтров,чтоб наглядно можно было их видеть и значения с условиями менять в красивой менюшке... и тем более наши преподаватели испытывают батхерт если видят латиницу в базе.русские поля кстати ок пашут, с этим проблем нет

для них access с русскими буквами-эталон...они небось про постгрес не слышали даже :)


кстати,схему делаю в EMS SQL Manager - из всего что попробовал самая удобная штука.тем более есть фриварная версия которой мне хватает...и код она генерирует нормальный в отличие от всяких опенсорц ява моделлеров

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