Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Unique Keys, Indexes  [new]
Edgar
Member

Откуда: Лондон
Сообщений: 434
Может ли в UNIQUE поле содержать более одного значения NULL?

create table table1 (id int identity(1,1) primary key, unique_id int unique)
insert into table1(unique_id)values (100)
insert into table1(unique_id)values (200)
insert into table1(unique_id)values (NULL)
insert into table1(unique_id)values (NULL)
insert into table1(unique_id)values (NULL)


Выдается ошибка о дубликатах

Violation of UNIQUE KEY constraint 'UQ__table1__A292913150C5FA01'. Cannot insert duplicate key in object 'dbo.table1'.
8 окт 12, 10:57    [13282825]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Edgar,

для SQL 2008
create table table1(id int identity primary key, unique_id int);
create unique index i_table1_unique_id on table1(unique_id) where unique_id is not null;
8 окт 12, 11:00    [13282843]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
denis2710
Member

Откуда: Москва
Сообщений: 3384
автор
Может ли в UNIQUE поле содержать более одного значения NULL?

автор
Violation of UNIQUE KEY constraint 'UQ__table1__A292913150C5FA01'. Cannot insert duplicate key in object 'dbo.table1'.
8 окт 12, 11:01    [13282844]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
Edgar
Member

Откуда: Лондон
Сообщений: 434
iap,

По моему вопрос не был понят.
Мне надо создать такую таблицу, чтобы одно поле содержало уникальные значения, и сколько угодно NULL.

id unique_id
-- --------
1 100
2 200
3 NULL
4 NULL
5 NULL
6 800
такое можно сделать?
8 окт 12, 11:23    [13283013]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Edgar
iap,

По моему вопрос не был понят.
Мне надо создать такую таблицу, чтобы одно поле содержало уникальные значения, и сколько угодно NULL.

id unique_id
-- --------
1 100
2 200
3 NULL
4 NULL
5 NULL
6 800
такое можно сделать?
А я что написал?!
Версия сервера-то какая?!
8 окт 12, 11:25    [13283023]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31983
Edgar
такое можно сделать?
Да, вам iap и предложил решение.
8 окт 12, 11:32    [13283081]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
Edgar
Member

Откуда: Лондон
Сообщений: 434
iap,

Да, спасибо. SQL 2008 R2 64-bit
Из Management Studio заработало, а из PHP ошибка

INSERT failed because the following SET options have incorrect settings: 'ANSI_NULLS, QUOTED_IDENTIFIER, 
CONCAT_NULL_YIELDS_NULL, ANSI_WARNINGS, ANSI_PADDING'. Verify that SET options are correct for use with index
?
8 окт 12, 11:38    [13283120]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Edgar
iap,

Да, спасибо. SQL 2008 R2 64-bit
Из Management Studio заработало, а из PHP ошибка

INSERT failed because the following SET options have incorrect settings: 'ANSI_NULLS, QUOTED_IDENTIFIER, 
CONCAT_NULL_YIELDS_NULL, ANSI_WARNINGS, ANSI_PADDING'. Verify that SET options are correct for use with index
?
Так установите правильно эти параметры перед INSERTом в том же батче!
В чём проблема-то?
8 окт 12, 11:40    [13283137]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
Edgar
Member

Откуда: Лондон
Сообщений: 434
iap,

А какие значения надо для них установить?
8 окт 12, 11:47    [13283198]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Edgar
iap,

А какие значения надо для них установить?
Обязательные параметры SET для отфильтрованных индексов
8 окт 12, 12:31    [13283555]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
Читатель неместный
Guest
а в 2005м можно создать вычисляемую колонку, в которую можно продублировать значение из заданной, и по условию is null записывать какое либо другое уникальное значение (например минусовое) и по нему строить уникальный индекс... через ж.. но все же
8 окт 12, 12:39    [13283632]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
Edgar
Member

Откуда: Лондон
Сообщений: 434
А можно создать INSTEAD OF TRIGGER?
Подскажите как?
8 окт 12, 17:44    [13286310]     Ответить | Цитировать Сообщить модератору
 Re: Unique Keys, Indexes  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
Edgar,

BOL читать религия не позволяет ?
8 окт 12, 19:51    [13286950]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить