Форум Сообщества Аналитиков

×


проектирование БД в Enterprise Architect(Прочитано 28156 раз)
Всем доброго времени суток!
Возник вопрос по проектированию схемы БД в Enterprise Architect.
В натоящий момент приходится делать так - например, порядок создания двух таблиц, идентификатор одной из которых приходит в другую таблицу (идентифицирующая связь!) будет такой:
- создаём две таблицы
- создаём В КАЖДОЙ ТАБЛИЦЕ два ОДИНАКОВЫХ поля ID_OBJECT
- тянем ассоциацию из одной таблицы в другую
- вызываем меню по правой кнопке и выбираем "Foreign Keys..."
- в появившемся окне устанавливаем соответствие между двумя полями ID_OBJECT в разных таблицах
Но такое создание ключей мелденно и неудобно, нет ли автоматического способа? Как в ERwin или PD - тянешь связь и все ключи сразу создаются.



Re: проектирование БД в Enterprise Architect Ответ #1 : 01 Июля 2009, 14:23:39
Есть смотрите Project Transformations



Re: проектирование БД в Enterprise Architect Ответ #2 : 01 Июля 2009, 14:36:28
Вы имеете ввиду генерацию в DDL-скрипт? но пока об этом рано говорить. Речь идёт просто о том, чтобы "с нуля" нарисовать схему БД в EA



Re: проектирование БД в Enterprise Architect Ответ #3 : 01 Июля 2009, 14:49:34
Может, можно написать Java-плагин для реализации такой функциональности, т.е. чтобы все вышеописанные действия делались внутри этого плагина?



Re: проектирование БД в Enterprise Architect Ответ #4 : 01 Июля 2009, 17:32:06
Вы имеете ввиду генерацию в DDL-скрипт? но пока об этом рано говорить. Речь идёт просто о том, чтобы "с нуля" нарисовать схему БД в EA
нет я говорю не о длл а MDA трансформации



Re: проектирование БД в Enterprise Architect Ответ #5 : 01 Июля 2009, 17:51:09
к сожалению, речь идёт не о трансформациях, а о проектировании схемы БД "с нуля". А, как уже описывалось выше, это делается руками очень медленно, что неприемлемо...



Re: проектирование БД в Enterprise Architect Ответ #6 : 01 Июля 2009, 18:27:55
Да, медленно. Про приемлемость - нормально, моделировали, привыкнуть к этому можно. Конечно, в Power Designer удобнее. Но есть разница в цене на 2 (!) порядка:
  • Sparx Systems Enterprise Architect - 4-5 тыс. руб. за рабочее место
  • Sybase PowerDesigner Studio - 220-450 тыс. руб. за рабочее место



Re: проектирование БД в Enterprise Architect Ответ #7 : 01 Июля 2009, 19:17:40
к сожалению, речь идёт не о трансформациях, а о проектировании схемы БД "с нуля". А, как уже описывалось выше, это делается руками очень медленно, что неприемлемо...
если честно не понял смысла предложения. если учесть ваш первый пост, то вы задаете вопрос как сделать таблицы без выполнения тех действий, что вам так не нравяться.

я сказал вам, что делаете модель классов и ЕЕ трансформируете в модель данных со всеми первичными вторичными ключами и т.п.

к тому же - а зачем вам ЕА - делайте это в ЕРвине или бесплатных инструментах для DB дизайна



Re: проектирование БД в Enterprise Architect Ответ #8 : 17 Августа 2009, 10:56:42
Доброго всем времени суток. У меня вопрос по генерации DDL. Сиквенсы для таблиц генерируются с именами *_SEQ. Где я могу изменить формат генерируемых имен для них?



Re: проектирование БД в Enterprise Architect Ответ #9 : 17 Августа 2009, 13:26:28
Доброго всем времени суток. У меня вопрос по генерации DDL. Сиквенсы для таблиц генерируются с именами *_SEQ. Где я могу изменить формат генерируемых имен для них?
Вероятно в DDL скрипте



Re: проектирование БД в Enterprise Architect Ответ #10 : 18 Августа 2009, 04:36:33
а если у меня 1000 сиквенсов генерируется? ручками менять каждое имя как-то не хочется) Имена ведь генерируются по какому-то шаблону. Мне бы узнать где этот шаблон можно отредактировать.



Re: проектирование БД в Enterprise Architect Ответ #11 : 18 Августа 2009, 18:46:49
а если у меня 1000 сиквенсов генерируется? ручками менять каждое имя как-то не хочется) Имена ведь генерируются по какому-то шаблону. Мне бы узнать где этот шаблон можно отредактировать.
Извините, я наверное не понимаю Вашей проблемы. Давайте разберемся в точности.
1. Что Вы подразумеваете под "сиквенсом"?
2. Каким образом Вы определяете что данная таблица "сиквенс" или не "сиквенс"?
3. DDL скрипт - это средство автоматизации трансформации имеющейся модели в SQL код, а Вам что нужно?
4. Сформулируйте Вашу задачу точно, пусть это будет некоторый пример!



Re: проектирование БД в Enterprise Architect Ответ #12 : 20 Августа 2009, 07:34:11
Да, наверное я и правда не уточнил, что имею в виду)

Под сиквенсом я подразумевал генератор уникальных значений. В моем случае для Oracle.
Пример:
допустим у меня есть таблица Table со столбцами ID, Name. Для столбца ID я устанавливаю Auto Number в Column Properties. Также выбираю database: Oracle.

Далее запускаю генерацию DDL: Project - Database Engineering - Generate Package DDL. В открывшемся окне ставлю галочку на Generate sequences и запускаю генерацию. У меня получается скрипт создания таблицы с именем Table и сиквенса с именем Table_SEQ. Так вот. Мне нужно чтобы имена сиквенсов были не <имя таблицы>_SEQ, а SEQ_<имя таблицы>.

Вот теперь вроде бы понятно объяснил)



Re: проектирование БД в Enterprise Architect Ответ #13 : 20 Августа 2009, 11:34:08
К сожалению мне не удалось найти, где в скрипте DDL можно изменить местоположение приставки-суффикса. Боюсь, это явно невозможно, это зашито где-то на уровне кода. Для уточнения - попробуйте задать вопрос на форуме ЕА.

Однако, Вы описали недостаточные действия. Кроме
Цитировать
ставлю галочку на Generate sequences
, нужно так же установить Create triggers.

Однако решение Вашей проблемы элементарно. Напишите программку, или ручками в том же FAR меняете все вхождения типа Table1_id_SEQ на новые SEQ_Table1_id. Не особо и парясь.

А можно вопрос - почему неприменно нужно чтобы SEQ стоял впереди?



Re: проектирование БД в Enterprise Architect Ответ #14 : 20 Августа 2009, 17:15:21
Цитата: Galogen
А можно вопрос - почему неприменно нужно чтобы SEQ стоял впереди?

видимо, потому, что у него не только SEQ'и имеются
Лью воду...




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19