Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
Мне нужно для ограничений первичного ключа(или foreign key) указывать имя используемого индекса. В ПД я создаю индекс прикрепляю его к моему первичному ключу, вроде все нормально! Но вытаюсь построить скрипт создания этой таблицы имя используемого индекса не указываэться!!! Другими словами, мне нужно получить что-то типа такого Код: plaintext 1. 2. 3. 4. 5. можно сделать чтобы ПД прописывал мне USING INDEX IDX_ORDERS_PK..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2005, 02:12 |
|
||
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
Никто не знает? Или я непонятно сформулировал вопрос? Помогите, я сейчас активно изучаю этот десинжер, и думаю после освоения он мне облегчит в некоторых моментах работу! У меня вот походу появилось еще 2 вопроса: 1.при создании таблицы я к полям имею возможностьписать коментарии, как мне сделать чтобы эти коментарии экспортировались в мой SQL скрипт (Database->Generate Dtabase) 2.При генерации мадели данных с SQL-скрипта в котором есть однострочные комментарии (--такого типа) ПД их не понимает, и думает что это наименование полей! Получаеться полный бред, это глюк, или это исправляеться? 3. Ну и все по тому же вопросу, можно указывать имя индекса для моих ключей (Primary key, foreign key) ЗЫ. может кто может дать небольшую модель данных? Интересно какой вид она имеет у Вас, какие настройки вы используете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2005, 18:30 |
|
||
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
Relaxxx wrote: > Никто не знает? Или я непонятно сформулировал вопрос? Выходной день:) Судя по синтаксису, это Oracle? В PowerDesigner 11 это настраивается на странице Options свойств ключа, на ней из левой части добавь "using index" - "index name" а правую, после чего укажи его значение. Только в связи с этим все равно наблюдается глюк при генерации: первичные и альтернативные ключи генерятся ДО индексов, соответственно, ты получишь ошибку выполнения SQL, надо будет предварительно его подправлять руками. > > 1.при создании таблицы я к полям имею возможность писать комментарии, как > мне сделать чтобы эти комментарии экспортировались в мой SQL скрипт > (Database->Generate Dtabase) На закладке Tables&Views поставь галку на Comments в группе Columns. > 2.При генерации мадели данных с SQL-скрипта в котором есть однострочные > комментарии (--такого типа) ПД их не понимает, и думает что это > наименование полей! Получаеться полный бред, это глюк, или это > исправляеться? Покажи пример скрипта, не совсем понятно. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2005, 19:16 |
|
||
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
1. Denis Popov Выходной день:) Судя по синтаксису, это Oracle? В PowerDesigner 11 это настраивается на странице Options свойств ключа, на ней из левой части добавь "using index" - "index name" а правую, после чего укажи его значение. Да это Oracle, прописал как вы рассказали "using index" - "index name" и проблема решаеться для Primary key, а как быть с Foreign key? Я зачем тогда создавать индексы и связывать их с ключами и референсами, если эта опция ничего не дает( Table Properties->Indexes->Index Properties->Columns->Columns definition!!, я таким образом создал любые индексы и попривязывал их к моим ключам и ссылкам, но это вообще ничего не дало, зачем тогда эта функция??? )??? Еще я работаю с FireBird 1.5, там тоже поддерживаеться USING INDEX (просто я нехочу чтобы БД сама генерировала индексы непонятного названия и предназначения) но при выборе БД InterBase 6.x вкладка Options пропадает(это там где "using index" - "index name")??? 2. Denis Popov На закладке Tables&Views поставь галку на Comments в группе Columns. Это в случае с Oracle, и это не те комментарии, мне не нужно comment on column ХХХХ is, я хотел бы напротив каждого поля таблицы вмоем скрипте писать коментарии( ORD_MANAGER_ID_FK -- ссылка на менеджера, например), ну и к табличкам хотелось бы того же. 3. Denis PopovПокажи пример скрипта, не совсем понятно. Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2005, 14:24 |
|
||
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
RelaxxxДа это Oracle, прописал как вы рассказали "using index" - "index name" и проблема решаеться для Primary key, а как быть с Foreign key? Я зачем тогда создавать индексы и связывать их с ключами и референсами, если эта опция ничего не дает( Table Properties->Indexes->Index Properties->Columns->Columns definition!!, я таким образом создал любые индексы и попривязывал их к моим ключам и ссылкам, но это вообще ничего не дало, зачем тогда эта функция??? )??? В Oracle при создании внешнего ключа индекс по полям этого самого ключа автоматом не создается, в отличие от InterBase. Команда на создание FK не подразумевает конструкцию USING INDEX. Указание в модели для индекса, что он PK, AK или FK не приводит к его использованию при генерации ключей. Скорее всего это их некое логическое разбиение для использования в самой модели или при генерации БД. Relaxxx Еще я работаю с FireBird 1.5, там тоже поддерживаеться USING INDEX (просто я нехочу чтобы БД сама генерировала индексы непонятного названия и предназначения) но при выборе БД InterBase 6.x вкладка Options пропадает(это там где "using index" - "index name")??? Значит, эта фича в PD не реализована, в PD12beta, кстати, тоже. В принципе ты сам можешь сделать некое ее подобие через Extended Attributes для объекта Reference модели. Relaxxx и у меня получаються колонки типа --уникал, -- наимен )) (здесь БД опять FireBird) А вот это, значит, багофичи парсера SQL-скрипта, реализованного в PowerDesigner'е. Т.е. придется соблюдать определенные правила при построении скриптов, если ты хочешь чтобы PD их корректно разобрал. Пиши, к примеру, так: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2005, 15:15 |
|
||
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
Denis Popov В Oracle при создании внешнего ключа индекс по полям этого самого ключа автоматом не создается, в отличие от InterBase. Команда на создание FK не подразумевает конструкцию USING INDEX. Указание в модели для индекса, что он PK, AK или FK не приводит к его использованию при генерации ключей. Скорее всего это их некое логическое разбиение для использования в самой модели или при генерации БД. Понятно, не сильно приятно(( Denis Popov Значит, эта фича в PD не реализована, в PD12beta, кстати, тоже. В принципе ты сам можешь сделать некое ее подобие через Extended Attributes для объекта Reference модели. Вообщем, я так понял, работу с индексами в скриптах нужно будет поправлять вручную. Насчет Extended Attributes, нельзя ли поподробней, что можно с помосчью него сделать, можна прописывать какие-то правила? Denis Popov А вот это, значит, багофичи парсера SQL-скрипта, реализованного в PowerDesigner'е. Т.е. придется соблюдать определенные правила при построении скриптов, если ты хочешь чтобы PD их корректно разобрал. Это нестрашно, я с этим смирюсь) А что насчет комментариев? Еще непрятные моменты, они лечяться: при создании reference между таблицами, появляеться имя constraint этой ссылки. Если я подвину в нужное место это имя(для читабельности) и опять пошевелю стрелку или таблицу, имя ссылки опять возвращаеться в положение по умолчанию (бесит это), протектид не помогает. Имя ссылки можно писать по вертикали? ЗЫ. Да ПД интересная штука, и полезная, но со своими тараканами, и их у нее НЕМАЛО ((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2005, 16:47 |
|
||
|
PD11, не могу настроить генерацию скрипта для создания таблицы так как мне надо
|
|||
|---|---|---|---|
|
#18+
RelaxxxПонятно, не сильно приятно(( Из вышесказанного не следует, что в Oracle необходимо создавать этот индекс. RelaxxxНасчет Extended Attributes, нельзя ли поподробней, что можно с помосчью него сделать, можна прописывать какие-то правила? Меню Database->Edit Current DBMS, далее по ветке Profile добавь метакласс Reference (правой кнопкой мыши на ветке Profile -> Ad Metaclass), у него добавь Extended Attribute (правой кнопкой: New->Extended Attribute), обзови его, к примеру, ExtUsingIndex, Data Type поставь String. Теперь по ветке Script\Objects\Reference у двух подветок: Add и Create измени значение, добавив такую строку: Код: plaintext Это полдела. Теперь можно заставить PD определять значение ExtUsingIndex при реинжиниринге. Для этого следует по пути Script\Objects\Reference\SqlListQuery в вписке на верхней строке включить ", ExtUsingIndex EX" и поправить запрос, чтобы он тебе возвращал требуемое значение. RelaxxxА что насчет комментариев? Правь скрипты на создание объектов, как я показал выше. Разве что для таблиц напротив каждого поля это не получится, поскольку список полей при создании заблицы расшивается внутренним макросом %TABLDEFN%. Разве что ты можешь перед каждой таблицей выводить свои комментарии, что в ней чего обозначает. Кстати, почему бы эти комментарии не делать равными собственно комментариям к таблицам, полям и т.д.? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2005, 17:18 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=145&tid=1545540]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
2ms |
| others: | 276ms |
| total: | 401ms |

| 0 / 0 |
