Баннер
Баннер

Размещение объекта OLE - Использование поля со списком при вводе записей

Оглавление
Размещение объекта OLE
Использование поля со списком при вводе записей
Схема данных в Access
Связи между таблицами
Обеспечение целостности данных
Все страницы

Использование поля со списком при вводе записей

Одним из способов ввода подчиненных записей только при наличии связанной записи в главной таблице может быть использование в подчиненной таблице поля со списком, включающим значения поля главной таблицы. Создадим в таблице студент для поля НГ (номер группы) поле со списком, построенным на основе ключа таблицы группа. Для этого откроем таблицу I студент в режиме конструктора. Установим курсор в поле НГ на столбце Тип данных, откроем список и выберем строку Мастер подстановок (см. рис. 3.5). В открывшемся окне мастера Создание подстановки установим флажок Объект "столбец подстановки" будет использовать значения из таблицы или запроса. При этом будет построен список на основе значений из таблицы.

В следующем окне мастера выберем таблицу ГРУППА, на значениях из которой будет строиться список поля. Далее выберем столбец, из данных которого будет формироваться список.

В следующих окнах мастера выберем нужную ширину столбца списка и его подпись. На этом создание мастером поля со списком завершается. Параметры списка, подготовленные мастером, отображаются в окне свойств поля НГ на вкладке Подстановка.

Теперь при вводе данных в таблицу студент можно воспользоваться списком, в котором отобразятся все значения поля НГ, содержащиеся в таблице группа. Ввод значения в поле НГ осуществляется путем выбора нужного значения из списка. Наличие поля со списком не запрещает ввод в поле НГ значений, не указанных в списке. Однако если при определении параметров списка в окне конструктора, в разделе Свойства поля на вкладке Подстановка выбрать для свойства Ограничиться списком значение Да, то ввод непредусмотренных в списке значений сделается невозможным. Система отследит эту ситуацию и, в случае отклонения от значений списка, выдаст сообщение, показанное на рис.

Таким образом, пользователь вынужден будет придерживаться только представленных в списке значений, и в подчиненную таблицу будут введены только связанные записи. Таким образом, использование списков не только обеспечивает удобный ввод, но и позволяет избежать многих ошибок.

Рассмотрим еще один пример использования поля со списком. Преобразуем таблице изучение поле КП — код предмета в поле со списком. Для этого откроем таблицу в режиме конструктора, установим курсор в поле КП на столбце Тип данных, откроем список этого столбца и выберем строку Мастер подстановок. В диалоге с мастером выберем главную по отношению к таблице изучение таблицу предмет, на основе данных которой создается список, и включаемые в список поля: КП (код предмета) и НП (наименование предмета). Кроме того, оставим, как предлагает мастер, помеченным флажок Скрыть ключевой столбец (рекомендуется). Результат работы мастера представлен на.

Если установить флажок Скрыть ключевой столбец (рекомендуется), то для первого столбца списка устанавливается ширина, равная нулю. При этом свойство Ограничиться списком может принимать только одно значение — Да.

Определение поля со списком с такими параметрами приводит к отображению в поле таблицы КП вместо значений ключевого поля значений второго поля списка — поля НП (наименование предмета). На рис. 3.30 показано, как в таблице ИЗУЧЕНИЕ отображаются поля со списком Код предмета и Табельный преподавателя при нулевой ширине присоединенного столбца.

Таким образом, использование полей со списком поможет избежать ошибок при вводе связанных записей в таблицы как за счет того, что в таблицах вместо ключей могут быть отображены смысловые значения, так и за счет того, что ввод ограничивается набором значений в списке.

Внимание!

При создании полей со списком мастер подстановки автоматически создает связь между таблицей, в которой создается поле со списком, и таблицей-источником значений списка. Эту связь можно увидеть в окне Схема данных, щелкнув на кнопке панели инструментов Отобразить все связи.

Очевидно, что в базе данных сложной структуры при вводе данных непосредственно в таблицы не гарантируется надежное и корректное обслуживание данных. В рассматриваемом примере базы данных Учебный процесс при вводе данных в таблицы нижних уровней необходимо | отслеживать несколько вышестоящих. При большом объеме данных это очень затруднительно.





Читайте также:

Добавить комментарий


Защитный код
Обновить




Разделы



Главная Базы данных Размещение объекта OLE