Re: [pgsql-ru-general] Re: [pgsql-ru-general] Частично уникальное поле

From: Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
To: Nikolay Samokhvalov <samokhvalov(at)gmail(dot)com>
Cc: "Dmitry E(dot) Oboukhov" <unera(at)debian(dot)org>, pgsql-ru-general(at)postgresql(dot)org
Subject: Re: [pgsql-ru-general] Re: [pgsql-ru-general] Частично уникальное поле
Date: 2011-03-13 00:26:24
Message-ID: AANLkTikzmOin4MEZrW0wrj0+2-Nfhf4XLMZFQX51331h@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

Приветствую,

13 марта 2011 г. 2:54 пользователь Nikolay Samokhvalov <
samokhvalov(at)gmail(dot)com> написал:

> 2011/3/13 Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
>
>>
>>
>> 13 марта 2011 г. 2:00 пользователь Nikolay Samokhvalov <
>> samokhvalov(at)gmail(dot)com> написал:
>>
>>>
>>> UNIQUE INDEX это уже и есть ограничение целостности (constraint).
>>>
>> А вот это не так. Ограничение уникальности (UNIQUE CONSTRAINT)
>> является не индексом, а его зависимостью. Т.е. невозможно удалить
>> уникальный индекс, порожденный неявно при создании ограничения
>> уникальности.
>> Видимо, именно такой объект и хочет создать автор. Однако следует
>> иметь в виду, что индекс, автоматически создаваемый при создании
>> ограничения уникальности будет не частичным.
>>
>
> Приветствую ценителя теории ))
>
> Уникальный индекс -- это уже и есть ограничение целостности. Можно ещё раз
> повторю? И ещё, на ночь, чтобы запомнилось.
>
> Где тут "не так"? ))
>
Повторяйте сколько угодно раз, хоть сто. За одно повторите
чтение (можно на ночь)
http://www.postgresql.org/docs/9.0/static/ddl-constraints.html
пункта 5.3.3 о том, что такое UNIQUE CONSTRAINT, не упустив из виду
"Adding a unique constraint will automatically create a unique btree index
on the column
or group of columns used in the constraint.". Надеюсь, что после этого Вы не
станете
утверждать, что ограничение уникальности является уникальным (btree)
индексом.
Я всегда ратовал и буду ратовать за корректность.

>
> Для новичков нужно запоминать именно так, чтобы как раз и не возникало
> вопросов "а как создать constraint".
>
Ой, да ладно про "спец курсы для новичков". :-)

>
> Про размер индекса -- верно, частичный индекс экономит место, если NULL-ов
> ожидается много. Но при этом надо понимать, что будут последствия для
> оптимайзера (всё же это индекс и он может пригодиться не только как
> ограничение целостности).
>
Какие такие последствия?

>
> По поводу что-то не так делаю и спать пора -- желательно привести пример,
> показывающий суть вопроса (что за одинаковые 'col'). Может, там не в
> collation дело, а в какой-нибудь кириллической буковке, смахивающей на
> латинницу )
>

--
// Dmitriy.

In response to

Responses

Browse pgsql-ru-general by date

  From Date Subject
Next Message Nikolay Samokhvalov 2011-03-13 00:48:50 Re: [pgsql-ru-general] Re: [pgsql-ru-general] Частично уникальное поле
Previous Message Dmitry E. Oboukhov 2011-03-13 00:00:15 Re: Re: [pgsql-ru-general] Частично уникальное поле