![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить список пользовательских (несистемных) индексов [D7, FB 1.5.2]
Вольный Стрелок © (2005-08-04 16:30:00)собственно, сабж
Нужно отсеять всякие индексы, полученные автоматически при создании PK, FK, UK.
Извлечь только вручную созданные.
Вольный Стрелок (2005-08-04 18:03:00) [1]Потому, что данные всякие бывают :(
Левые индексы только тормозят, никакой пользы от них при заливке.
А правые индексы (от ограничений) пользу имеют, ограничивают :), мусор режут.
При этом, конечно, порядок заливки таблиц важен, чтобы на FK не напороться.
Johnmen (2005-08-04 17:55:00) [2]>Использую для отключения индексов, не связанных с CONSTRAINT
Почему же такая избирательность ?
Вольный Стрелок (2005-08-04 17:53:00) [3]кому интересно, у меня получилось такое:
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 (при массовых заливках). Потом включаю назад.
Вольный Стрелок (2005-08-04 17:05:00) [4]Вот именно поэтому и спрашиваю. У меня все CONSTRAINT именованные и никаких автогенерируемых имен типа RDB$ нет.
[1,2]
UK - это UNIQUE KEY, задаваемый через CONSTRAINT
За ссылку спасибо, может, что-то полезное возьму. Но там рассматриваются RDB$-индексы :(
Андрей Жук (2005-08-04 16:56:00) [5]
> Нужно отсеять всякие индексы, полученные автоматически
> при создании PK, FK, UK.
Ха. При создании первичного/уникального/внешнего ключа в FB можно указывать имя индекса. Как в таком случае фильтровать будешь?
Sergey13 (2005-08-04 16:49:00) [6]2 [2] Digitman © (04.08.05 16:47)
>UK (UserKey) - это что-то новое
Unique - это хорошо забытое старое. 8-)
Digitman (2005-08-04 16:47:00) [7]UK (UserKey) - это что-то новое ... неужто я так дремуч и отстал от жизни ?
Johnmen (2005-08-04 16:34:00) [8]А что такое UK ?
см. http://www.ibase.ru/devinfo/sysqry.htm