#ms-access #vba #ms-access-2007
#ms-access #vba #ms-access-2007
Вопрос:
Ищу совет относительно правильного метода решения этой проблемы с дизайном
У меня есть таблица для профиля / записи (tblProfile), каждый профиль может иметь более одного адреса / свойства (tblProp)
У меня есть форма для добавления профиля и отдельная форма для добавления адреса.
Каков был бы правильный метод, позволяющий выбрать один адрес в качестве адреса контакта? Было бы целесообразно использовать третью таблицу для хранения идентификатора пользователя и контактного адреса ID, или использовать поле в tblProp. Какой тип дизайна формы потребуется?
Я полагаю, что это довольно простой дизайн / теория базы данных, но мне немного сложно разобраться в этом.
Заранее спасибо за любую помощь, которую кто-либо может предоставить
Приветствую Ноэля
Ответ №1:
Пройдя через это, я думаю, что поле статуса адреса — лучший выбор. Это позволит вам выбрать, является ли адрес основным адресом, бывшим адресом и т.д. Фактически, в зависимости от вашей настройки, может быть полезно иметь два поля классификации, только что описанное и тип адреса, который был бы домашним, рабочим и т.д.
Еще один момент — я счел полезным при некоторых обстоятельствах записать ключ для основного адреса в таблицу persons.
Комментарии:
1. Приветствую Рему. Каков был бы правильный способ, используя ваш метод, гарантировать, что в качестве адреса контакта можно выбрать только один адрес? Таким образом, при изменении статуса адреса на contact статус предыдущего адреса, используемого в качестве контактных данных, будет автоматически изменен?
2. Если у каждого пользователя может быть только один контактный адрес, сохраните его в главной таблице. Если ключ адреса совпадает с ключом основной таблицы, то это контактный адрес.
3. Под основной таблицей вы подразумеваете таблицу с данными пользователей, tblProfile?
4. ДА. Если поле (столбец) может встречаться только один раз, tblProfile — хорошее место для его хранения.