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

Откуда:
Сообщений: 26
привет, есть таблица из 5 полей. Как отделить составной первичный ключ от первичного?
тоесть 1-2 колонка (составной первичный ключ) а 5 колонка обычный первичный ключ
чтото типо того:
ALTER TABLE City
	ADD PRIMARY KET(one,two) and PRIMARY KEY(five)
13 фев 12, 13:06    [12080977]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
Glory
Member

Откуда:
Сообщений: 104751
borovik
Как отделить составной первичный ключ от первичного?

Первичный ключ он единственный. Поэтому и называется первичным
Остальные называются вторичными или альтернативными
13 фев 12, 13:07    [12080988]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
borovik
Member

Откуда:
Сообщений: 26
ну а как тогда сделать так чтобы пятая колонка не допускала повтора?
вот например если было
1 2 3 4 5
добавляю
1 2 3 4 5 - ошибка по (1,2) и по (5)
1 1 3 4 5 - ошибка по (5)
1 2 3 4 6 - ошибка по (1,2)
(1,2) составной ключ
13 фев 12, 13:12    [12081023]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
Glory
Member

Откуда:
Сообщений: 104751
borovik
ну а как тогда сделать так чтобы пятая колонка не допускала повтора?

Наложить на нее ограничение уникальности - UNIQUE
13 фев 12, 13:13    [12081037]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
borovik
Member

Откуда:
Сообщений: 26
мне нужно это сделать без Уникальности
13 фев 12, 13:16    [12081053]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
borovik
мне нужно это сделать без Уникальности
Ключ без уникальности - это не ключ, как бы.
13 фев 12, 13:16    [12081062]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
borovik
Member

Откуда:
Сообщений: 26
ну я про не использование UNIQUE, только примари кей
13 фев 12, 13:17    [12081073]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
borovik
ну я про не использование UNIQUE, только примари кей
Вы как, ответы читаете вообще? 12080988
13 фев 12, 13:19    [12081088]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
Glory
Member

Откуда:
Сообщений: 104751
borovik
ну я про не использование UNIQUE, только примари кей

Вам бы в теории разобраться.
Одно ограничение не может работать как два ограничения
13 фев 12, 13:19    [12081093]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
borovik
Member

Откуда:
Сообщений: 26
понятно..
тоесть данная задача не выполнима без использования UNIQUE

автор
вот например, если было
1 2 3 4 5
добавляю
1 2 3 4 5 - ошибка по (1,2) и по (5)
1 1 3 4 5 - ошибка по (5)
1 2 3 4 6 - ошибка по (1,2)
(1,2) составной ключ
13 фев 12, 13:21    [12081120]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
iljy
Member

Откуда:
Сообщений: 8711
borovik
понятно..
тоесть данная задача не выполнима без использования UNIQUE

Увы, боюсь, заставить сервер наложить ограничение уникальности, не сообщая ему об этом, не получится
13 фев 12, 13:46    [12081314]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
iljy
borovik
понятно..
тоесть данная задача не выполнима без использования UNIQUE

Увы, боюсь, заставить сервер наложить ограничение уникальности, не сообщая ему об этом, не получится
Получится, если просто создать уникальный индекс.
Но UNIQUE лучше. Тем более, что при этом индекс будет создан автоматически.
13 фев 12, 13:49    [12081348]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
iljy
Member

Откуда:
Сообщений: 8711
iap
iljy
пропущено...

Увы, боюсь, заставить сервер наложить ограничение уникальности, не сообщая ему об этом, не получится
Получится, если просто создать уникальный индекс.
Но UNIQUE лучше. Тем более, что при этом индекс будет создан автоматически.

В индексе тоже придется явно указать, что он UNIQUE ;)))
13 фев 12, 13:50    [12081356]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
iljy
iap
пропущено...
Получится, если просто создать уникальный индекс.
Но UNIQUE лучше. Тем более, что при этом индекс будет создан автоматически.

В индексе тоже придется явно указать, что он UNIQUE ;)))
Но это не будет называться ограничением (CONSTRAINT)
13 фев 12, 13:56    [12081396]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
Ivan Durak
Member

Откуда: Minsk!!!
Сообщений: 3754
iap
iljy
пропущено...

В индексе тоже придется явно указать, что он UNIQUE ;)))
Но это не будет называться ограничением (CONSTRAINT)

юник констрэйнт собственно физически реализуется как индекс !
13 фев 12, 17:58    [12083596]     Ответить | Цитировать Сообщить модератору
 Re: Отделение составного и первычного ключа  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Ivan Durak
iap
пропущено...
Но это не будет называться ограничением (CONSTRAINT)

юник констрэйнт собственно физически реализуется как индекс !
Что там физически происходит, нас не должно волновать
Иначе мы дойдём до Ассемблера.
13 фев 12, 20:20    [12084661]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить