Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.18;
Скачать: CL | DM;

Вниз

Как определить список пользовательских (несистемных) индексов   Найти похожие ветки 

 
Вольный Стрелок ©   (2005-08-04 16:30) [0]

собственно, сабж
Нужно отсеять всякие индексы, полученные автоматически при создании PK, FK, UK.
Извлечь только вручную созданные.


 
Johnmen ©   (2005-08-04 16:34) [1]

А что такое UK ?
см. http://www.ibase.ru/devinfo/sysqry.htm


 
Digitman ©   (2005-08-04 16:47) [2]

UK (UserKey) - это что-то новое ... неужто я так дремуч и отстал от жизни ?


 
Sergey13 ©   (2005-08-04 16:49) [3]

2 [2] Digitman ©   (04.08.05 16:47)
>UK (UserKey) - это что-то новое
Unique - это хорошо забытое старое. 8-)


 
Андрей Жук ©   (2005-08-04 16:56) [4]


> Нужно отсеять всякие индексы, полученные автоматически
> при создании PK, FK, UK.

Ха. При создании первичного/уникального/внешнего ключа в FB можно указывать имя индекса. Как в таком случае фильтровать будешь?


 
Вольный Стрелок ©   (2005-08-04 17:05) [5]

Вот именно поэтому и спрашиваю. У меня все CONSTRAINT именованные и никаких автогенерируемых имен типа RDB$ нет.

[1,2]
UK - это UNIQUE KEY, задаваемый через CONSTRAINT
За ссылку спасибо, может, что-то полезное возьму. Но там рассматриваются RDB$-индексы :(


 
Вольный Стрелок ©   (2005-08-04 17:53) [6]

кому интересно, у меня получилось такое:
SELECT rdb$index_name AS index_name
FROM RDB$INDICES
WHERE rdb$relation_name NOT LIKE "RDB$%" AND
     rdb$index_name NOT IN( SELECT rdb$index_name
                              FROM RDB$RELATION_CONSTRAINTS
                              WHERE rdb$constraint_type IN ( "FOREIGN KEY", "PRIMARY KEY", "UNIQUE" ) )


Использую для отключения индексов, не связанных с CONSTRAINT (при массовых заливках). Потом включаю назад.


 
Johnmen ©   (2005-08-04 17:55) [7]

>Использую для отключения индексов, не связанных с CONSTRAINT

Почему же такая избирательность ?


 
Вольный Стрелок ©   (2005-08-04 18:03) [8]

Потому, что данные всякие бывают :(
Левые индексы только тормозят, никакой пользы от них при заливке.
А правые индексы (от ограничений) пользу имеют, ограничивают :), мусор режут.
При этом, конечно, порядок заливки таблиц важен, чтобы на FK не напороться.



Страницы: 1 вся ветка

Текущий архив: 2005.09.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.053 c
3-1122028275
Carmen
2005-07-22 14:31
2005.09.18
Ограничение записей в базе Firebird


1-1124891888
ArtemESC
2005-08-24 17:58
2005.09.18
Текст на Canvas


14-1124946500
Priest
2005-08-25 09:08
2005.09.18
Безопасность макросов в экселе


3-1123392268
Ольга
2005-08-07 09:24
2005.09.18
Как грамотнее открывать/закрывать соединение с базой


11-1090511223
Максим
2004-07-22 19:47
2005.09.18
FindComponent