![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Первичный ключ по двум полям [D7, MS Access]
Neo Trinitron © (2006-09-14 13:57:00)Доброго времени всем! Как можно в MSAccess таблице указать первичный ключ по двум и более полям? Может есть другой выход. Мне нужно чтобы значения двух или более полей не могли повторяться.
Neo Trinitron (2006-09-15 10:36:00) [1]Спасибо, разобрался.
create unique index Index_name on Table1(F1, F2)
Anatoly Podgoretsky (2006-09-14 19:52:00) [2]Да можно искать и по create indexи потом после прочтения основной темы, при необходимости переход на подробности
Desdechado (2006-09-14 18:39:00) [3]Neo Trinitron © (14.09.06 17:45) [10]
По словам из [4], заменив PRIMARY KEY на UNIQUE
ANB (2006-09-14 18:28:00) [4]
> Neo Trinitron © (14.09.06 17:45) [10]
create unique index on Table1(F1, F2)
Neo Trinitron (2006-09-14 17:45:00) [5]Desdechado, позвольте поинтересоваться, по каким словам её искать. Unique - нету. Что ещё можно придумать?
Desdechado (2006-09-14 17:14:00) [6]еще стыднее, что справку читать не желаешь
Neo Trinitron (2006-09-14 17:03:00) [7]> Ну так и добавь уникальный ключ на дкумент+товар.
Очень стыдно, но я не знаю как это сделать в MS Access...
Sergey13 (2006-09-14 16:51:00) [8]> [6] Neo Trinitron © (14.09.06 16:44)
Ну так и добавь уникальный ключ на дкумент+товар. Но это не значит, что этот ключ обязан быть первичныи (хотя может). Для ПК в товаре достаточно и просто отдельного ИД-шника - ссылаться будет проще.
Кстати, иногда в накладной может быть одинаковый товар, если учет по партиям идет.
Neo Trinitron (2006-09-14 16:44:00) [9]Что мне нужно. Есть таблица деталей накладной. Одно поле - идентификатор накладной, другое - идентификатор товара. Как сделать так чтобы в одной накладной не могло быть одного и того же товара более одного раза?
Val (from Kiev) (2006-09-14 15:38:00) [10]>Desdechado © (14.09.06 15:28) [4]
подмена понятий? для чего нужен пк?
Desdechado (2006-09-14 15:28:00) [11]> пара уникальна. на мой взгляд достаточено составного PK
Не подменяй понятий. Сам сказал, что уникально. Вот и сделать нужно уникальное граничение.
автору
Не совсем ясно, что нужно. Первичный ключ тоже может быть составнымALTER TABLE XXX ADD CONSTRAINT PK_XXX PRIMARY KEY( fld1, fld2 )
Но очень не рекомнедую так делать, геморройно потом на него ссылаться. Лучше сделай суррогатный целочисленный.
Val (from Kiev) (2006-09-14 15:21:00) [12]>ANB © (14.09.06 14:26) [2]
предположим - есть таблица-развязка отношения многие-ко-многим - всего два поля, которые по сути - ссылки, пара уникальна. на мой взгляд достаточено составного PK, т.е. все то же - "каждому овощу - свое время".
ANB (2006-09-14 14:26:00) [13]
> первичный ключ по двум и более полям
Это сделать можно, но не нужно. Для обеспечения уникальности есть уникальный индекс или уникальный ключ.
Sergey13 (2006-09-14 14:00:00) [14]1. Первичный ключ и уникальный ключ могут и не совпадать.
2. В чем проблема то?