powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как поменять названия индексов которые создает Firebird при создании ограничений (FK, PK)
4 сообщений из 4, страница 1 из 1
Как поменять названия индексов которые создает Firebird при создании ограничений (FK, PK)
    #32364975
Falcon12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Firebird создает автоматом индексы для проверки ограничений на колонки во внешнем/первичном ключах. В большинстве запросов мне эти индексы нужны. Но как только я пересоздаю базу из CASE - средства, Firebird может поменять имена у этих индексов, соответсвенно у меня отваливаются планы запросов (в частности при изменении схемы - меняются и имена индексов, Firebird применяет свой счетчик к именам получается что-то вроде FOREIGNNNN, PRIMARYNNN).

Можно как-то обойти эту проблему не создавая дополнительных индексов, т.е. не дублируя их, а использовать уже те которые создал Firebird?

Переименовать их можно после создания базы? У меня не получается т.к. навесили системных триггеров на системные таблицы и триггеры не отключаются и данные я не могу в системных таблицах менять. Но может есть другой способ без системных таблиц?
...
Рейтинг: 0 / 0
Как поменять названия индексов которые создает Firebird при создании ограничений (FK, PK)
    #32365071
falkton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В IBExpert при создании внешнего ключа можно указать название индекса для него и порядок сортировки (asc, desc), а для индексов у первичных ключей можно задать маску при автосоздании создании или в ручную указывать.
Значит вручную тоже можно.
...
Рейтинг: 0 / 0
Как поменять названия индексов которые создает Firebird при создании ограничений (FK, PK)
    #32365330
Romkin_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая возможность есть у Firebird 1.5. А вот планы запросов лучше не писать, как правило, лучше подбирать индексами
...
Рейтинг: 0 / 0
Как поменять названия индексов которые создает Firebird при создании ограничений (FK, PK)
    #32365507
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
create table  "Polis" 
(
    "PolisId"  integer constraint  "NotNullPolisId"  not null constraint  "pkPolis"  primary key,
    "ContractNo"  integer not null,
    "PolisNo"  integer not null,
    "Value"  varchar ( 256 ),
   constraint  "ukPolis"  unique ( "ContractNo" , "PolisNo" )
);
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как поменять названия индексов которые создает Firebird при создании ограничений (FK, PK)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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