Вниз
Скачать: CL | DM;

Уникальные индексы и констрейнты   Найти похожие ветки 

 
den_777   (2004-05-26 15:38) [0]

Может где в документации и есть, но хочется узнать от мастеров чем отличается
ALTER TABLE MYTABLE1 ADD CONSTRAINT UNQ_1 UNIQUE (FIELD1);
от
CREATE UNIQUE INDEX IDX_UQ1 ON MYTABLE1 (FIELD1);
насколько я понимаю в первом случае все равно создается индекс, только системный со своим именем RDB$XXXXX
Так в чем тогда различие(не в синтаксисе конечно, а на уровне базы данных)


 
Sandman25+1   (2004-05-26 15:45) [1]

(Уникальный) индекс создается с целью ускорить поиск.
Констрейнт на уникальность создается с целью гарантировать логическую целостность данных.
Резюмируя, скажу, что разницы с точки зрения БД я не вижу.


 
den_777   (2004-05-26 15:55) [2]


> (Уникальный) индекс создается с целью ускорить поиск.

можно создать и обычный индекс - разницы никакой для ускорения поиска нет. Еще более интересно и вполне логично, что анализатор плана в IBExpert показывает использование при поиске данных системного индекса, который создался автоматически при создании констрейнта.Так что с точки зрения ускорения поиска разницы абсолютно никакой.

> Констрейнт на уникальность создается с целью гарантировать
> логическую целостность данных.

Уникальный индекс вроде тоже самое делает

И все же зачем две аналогичные вещие существуют параллельно в SQL


 
Sandman25+1   (2004-05-26 16:18) [3]

[2] den_777   (26.05.04 15:55)

Уникальный индекс ускоряет лучше - нет необходимости проверять наличие дубликатов.

>Уникальный индекс вроде тоже самое делает

С точки зрения проектировщика БД, в таком случае нужно писать constraint, а не создавать индекс.


 
Johnmen ©   (2004-05-26 16:19) [4]

>И все же зачем две аналогичные вещие существуют параллельно в SQL

Какие две вещи ?
Индексы и констрейнты это разные вещи. Но в частном случае (в вопросе) это с т.з. функционирования одно и то же, о чем и сказали уже...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.029 c
1-1086264193
Прямой
2004-06-03 16:03
2004.06.20
Панельку надо


4-1084612229
Ярослав
2004-05-15 13:10
2004.06.20
Как программно закрыть messagebox?


4-1084285416
ArthurKhamitov
2004-05-11 18:23
2004.06.20
CD-ROM


3-1085734698
Mva
2004-05-28 12:58
2004.06.20
Вставка в таблицу запросом


1-1086432205
Narayan
2004-06-05 14:43
2004.06.20
a+b=c




   Наверх