powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Auto create index on FK for PD
10 сообщений из 10, страница 1 из 1
Auto create index on FK for PD
    #35727344
Skulll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, ктонибуть смог научить PD автоматически генерировать иднексы на FK?
PD 12.1. Current DB = Oracle 11g.
Шаблони имени необходим %U13:CHILD_TABLE_NAME%_%U12:PARENT_TABLE_NAME%_IFK

Извените если боян, редко к вам захожу :)
Поиск тоже ничего не дал.
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35727435
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skulll пишет:
> Коллеги, ктонибуть смог научить PD автоматически генерировать иднексы на FK?
> PD 12.1. Current DB = Oracle 11g.

Это ВРЕДНО ! индексы на FK надо создавать руками, тщательно это обдумывая.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35727574
Skulll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
Skulll пишет:
> Коллеги, ктонибуть смог научить PD автоматически генерировать иднексы на FK?
> PD 12.1. Current DB = Oracle 11g.

Это ВРЕДНО ! индексы на FK надо создавать руками, тщательно это обдумывая.


Да у нас все однотипно и строго по Naming Convention.
ID всегда PK, всегда NUMBER(24), составные ключи не используем. Думаю такие ограницения позволяют создать один скрипт для свех?

Но другой вопрос позволяет ли это PD! Я в нем так и не понял, какие шаблонные (%%) переменные в каких случаях можно использовать.
И куда записывать скрипт который будет вызываться при событии создания FK?

Для PK есть PkAutoIndex. Которые тоже кстати не удается запустить! Как я понял создается он в области Create. Там есть шаблонная переменаня %OPTIONS% в тексте которой есть переменная %s (<index_name>), но почему то этот блок у меня не инициализируется.

А для FK? И Куда собственно писать скрипт?
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35727715
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skulll пишет:

> Да у нас все однотипно и строго по Naming Convention.
> ID всегда PK, всегда NUMBER(24), составные ключи не используем. Думаю
> такие ограницения позволяют создать один скрипт для свех?
Здесь дело не в этом. А в том, что в дочерней таблице у вас могут
быть разные ситуации. Например, если связь идентифицирующая, и
поля родительской таблицы идут в PK дочерней, то индекс ваш
на FK, возможно, УЖЕ СОЗДАН -- это PK дочерней таблицы.
Зачем вам лишний индекс ?

Или другой случай, когда не нужно создавать индексы на FK в дочерней
таблице: если родительские записи вы никогда удалять не собираетесь.

На счёт конкретно PD сказать не могу ничего, забыл уже всё.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35727759
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skulll wrote at 22.12.2008 11:32:

> Коллеги, кто нибуть смог научить PD автоматически генерировать индексы на FK?
> PD 12.1. Current DB = Oracle 11g.
> Шаблоны имени необходим %U13:CHILD_TABLE_NAME%_%U12:PARENT_TABLE_NAME%_IFK

Меню Tools-> Rebuild Objects-> Rebuild Indexes (Ctrl+Shift+I). Именно такой шаблон имхо не возьмет,
у меня прокатил %CHILD%_%PARENT%_IFK. Посмотри по справке возможные переменные.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35728049
Skulll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis Popov
Меню Tools-> Rebuild Objects-> Rebuild Indexes (Ctrl+Shift+I). Именно такой шаблон имхо не возьмет,
у меня прокатил %CHILD%_%PARENT%_IFK. Посмотри по справке возможные переменные.

Точно!!
Вот так работает %.U15:CHILD%_%.U10:PARENT%_IFK
Но теперь проблема в том что у меня певрвые пять символов идет префикс подсистемы, т.е. clog_***

Конструкция %.U15:CHILD%_%.-U10:PARENT%_IFK берет последние 10 символов.
Т.е. мне нужно сперва обрезать до 15 с начала, а потом 10 с конца. Другово выхода не вижу из за отсутствия функции SUB STRING.

Такая конструкция проходит %.U15:CHILD%_%.U15.-10 :PARENT%_IFK но PD к сожалению отбрасывает .U15 (((
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35728087
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skulll wrote at 22.12.2008 15:11:

На мой взгляд, если у тебя внешние ключи уже именованы по правилу наподобе XXX_FK, то можно чуть
поменять правила именования индексов c "IFK" на "FKI" и формировать их имена как %REFR%I :)
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35728647
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Skulll пишет:

> Вот так работает %.U15:CHILD%_%.U10:PARENT%_IFK

Зачем так сложно именовать индексы ?
Просто перечислите поля, в них входящие, в порядке вхождения.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35728658
Skulll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis Popov
Skulll wrote at 22.12.2008 15:11:

На мой взгляд, если у тебя внешние ключи уже именованы по правилу наподобе XXX_FK, то можно чуть
поменять правила именования индексов c "IFK" на "FKI" и формировать их имена как %REFR%I :)


Да, скорей всего так и сделаю.

MasterZiv
Skulll пишет:

> Вот так работает %.U15:CHILD%_%.U10:PARENT%_IFK

Зачем так сложно именовать индексы ?
Просто перечислите поля, в них входящие, в порядке вхождения.


А нет доступа к столбцам.
...
Рейтинг: 0 / 0
Auto create index on FK for PD
    #35728760
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
Зачем так сложно именовать индексы ?
Просто перечислите поля, в них входящие, в порядке вхождения.

В Оракле для имени ограничение в 30 символов, легко тогда вылететь за него.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Auto create index on FK for PD
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]