2012-05-25 1 views
2

Два поля, здание и комната, составляют уникальный первичный составной ключ в моем номере. Ключ проверяет и сохраняет и т. Д.Композитный основной ключ Каскадирование

У меня есть таблица BLANK Objects, которая имеет три поля, которые сделают его уникальным (опять же составной первичный ключ). Таблицы таковы:

ROOM TABLE 
[Building]  [Room] 
01    101A 
01    102 
02    101A 

OBJECT TABLE 
[Building]  [Room]  [Number] 
01    101A  1 
01    101A  2 
01    102  1 
02    101A  1 

Как обеспечить ссылочную целостность? При редактировании отношений в средстве связей MS Access я получаю следующую ошибку: No unique index found for the referenced field of the primary table. Я знаю (пытаясь не уникальные значения), что составные ключи для первичной (Object) таблицы верны. Что я делаю не так? Как настроить правильные отношения и поддерживать целостность (поскольку обновления будут непростой задачей без них)?

ответ

3

Вы должны настроить свой ключ следующим образом:

Composite key

Обратите внимание, что первичный ключ для помещений устанавливаются в здание + номер и для объектов этого здание + номер + Numb (Номер является зарезервированное слово AFAIR)

+2

О, вау .... (вы также ответили на предыдущий, несколько смежный вопрос сегодня, потому что я не мог заставить этот метод работать). Оказывается, что имеет значение, какая таблица является «Связанной» таблицей. Я перетаскивал здание из объектов в комнаты, а не из комнат в объекты. Это имеет смысл .. но он не нажимал на меня, что таблица «Комнаты» должна быть «основной» таблицей, пока я не увижу ваш скриншот. Решено! – StuckAtWork