Вниз
Скачать: 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.038 c
9-1063691326
Cash
2003-09-16 09:48
2004.06.20
Загрузка звука во время выполнения программы


3-1085722787
maximus_
2004-05-28 09:39
2004.06.20
InterBase 6.5


1-1086761992
artem_123
2004-06-09 10:19
2004.06.20
вопрос по mainmenu


14-1086308022
SPeller
2004-06-04 04:13
2004.06.20
Microsoft получила патент на двойной клик мыши


4-1084627743
VeTaL_Programmer
2004-05-15 17:29
2004.06.20
Запись в реестр бинарного значения




   Наверх