Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Базы";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.028 c
3-1085425586
Данила
2004-05-24 23:06
2004.06.20
Работа с Датой


3-1085547689
Tomkat
2004-05-26 09:01
2004.06.20
FireBird на WinXP


11-1075639173
Vladimir Kladov
2004-02-01 15:39
2004.06.20
замена sysdcu для D4 - by Thaddy de Koning


3-1085720574
Salik
2004-05-28 09:02
2004.06.20
Поле типа счетчик


6-1083365117
greybox
2004-05-01 02:45
2004.06.20
TWebBrowser





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский