Зачем нужен мастер подстановок в access
Перейти к содержимому

Зачем нужен мастер подстановок в access

  • автор:

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

В главе 5, как вы помните, для учебной базы данных было создано три таблицы, а также три типа записей и несколько адресов каталогов (рис. 6.1). Теперь же нам нужно добавить к ним еще несколько записей о растениях.

Рис. 6.1. Эти три таблицы были созданы в главе 5

Откроем незаполненную таблицу Растения и введем данные о нескольких новых растениях, перечисленных в табл. 6.1.

Таблица 6.1. Добавляемые записи о растениях

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

1. Выберите первое поле в первом ряду таблицы и введите Тысячелистник.

2. Нажмите клавишу со стрелкой вправо и введите Achillea millefolium.

3. Пропустите следующие два поля и введите значение, определяющее номер для растения декоративного типа. Едва ли вы не помните этот номер, откройте таблицу Типы. Как видите, значением номера для растения декоративного типа является 1.

4. Вернитесь в таблицу Растения и введите значение 1 в поле Номер типа для тысячелистника.

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

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

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

Рис. 6.2. Запомнить значения типа растения для каждой записи непросто

Решить эту проблему можно путем создания в таблице Растения так называемого поля подстановки. Это поле отображает одно значение, в то время как содержит другое. Для его создания воспользуемся специальным мастером.

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

1. Откройте таблицу Растения в режиме конструктора, выбрав ее в окне Растения: база данных и щелкнув на кнопке Вид панели инструментов.

2. В настоящий момент типом данных для поля Номер типа является значение Числовой. Щелкните мышью на правой области столбца Тип данных в поле Номер типа, чтобы активизировать раскрывающийся список.

3. Выберите значение Мастер подстановок, как показано на рис. 6.3.

4. В первом окне мастера предлагается выбрать между использованием значения из таблицы или запроса и вводом фиксированного набора значений. В нашем случае требуется отображение описательных значений из таблицы Типы, поэтому выбираем переключатель Объект «столбец подстановки» будет использовать значения из таблицы или запроса, как и принято по умолчанию. Щелкните на кнопке Далее.

Рис. 6.3. Выбор мастера подстановок из раскрывающегося списка столбца Тип данных

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

6. В следующем окне отобразятся все поля таблицы или запроса, которые были выбраны в предыдущем окне. Как правило, лучше указывать поле, представляющее собой первичный ключ таблицы подстановки, и поле, содержащее необходимые для отображения значения. В данном случае щелкните на кнопке с двойными стрелками для переноса обоих полей в список Выбранные поля (рис. 6.4). Первичным ключом таблицы является поле Номер типа, а в поле Описание содержатся значения, которые будут предоставляться пользователю. Щелкните на кнопке Далее.

Рис. 6.4. Перенос обоих полей в список Выбранные поля

7. Следующее окно позволяет выбирать поля, используемые для сортировки списка данных. В нашем случае подойдет изначальный порядок, поэтому щелкните на кнопке Далее.

8. В окне, показанном на рис. 6.5, отображаются значения для поля подстановки. Обратите внимание на тот факт, что Access будет отображать не значения первичного ключа, а только описательные значения, выбранные в текущем списке. В случае необходимости измените ширину столбцов для полноценного отображения каждого значения. Щелкните на кнопке Далее.

Рис. 6.5. Описательное значение в поле подстановки

9. Наконец, мастер запросит имя нового поля подстановки. Примите имя, предложенное мастером, и щелкните на кнопке Готово.

10. Теперь появится окно с запросом на сохранение таблицы, в котором следует щелкнуть на кнопке Да. Если вы щелкнете на кнопке Нет, мастер аннулирует только что созданные параметры поля подстановки.

Как видите, Access автоматически отсортировала записи после добавления поля подстановки. На самом деле сортировка не имеет никакого отношения к этому полю — она по случайному стечению обстоятельств была выполнена после добавления поля подстановки. Дело в том, что Access упорядочивает данные по значениям первичного ключа. Поскольку поле первичного ключа является текстовым (Имя), Access сортирует записи в алфавитном порядке в соответствии со значениями этого поля.

Хоть это и не имеет значения на данном этапе, отметим, что формы и отчеты наследуют поля подстановки таблиц. Другими словами, все формы и отчеты, связанные с таблицей Растения, для отображения содержимого поля Номер типа будут использовать комбинированное окно, а не текстовый элемент управления, принятый по умолчанию. Более подробные сведения по этой теме представлены в главе 8.

Для просмотра нового поля подстановки следует щелкнуть на кнопке Вид, которая находится на панели инструментов конструктора базы данных. Ранее поле Номер типа содержало только числовые значения (см. рис. 6.2), а теперь здесь хранятся описательные текстовые наименования. Таким образом, поле подстановки автоматически отображает для любой записи соответствующее описание, а не ее числовое значение.

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

Для того чтобы ввести значение типа для новой записи, щелкните на значении в ниспадающем списке, выберите для растения Камея значение Декоративное и введите оставшиеся записи из табл. 6.1. По окончании этой работы вы должны получить таблицу, показанную на рис. 6.7 (закройте и снова откройте ее, в результате чего будет произведена автоматическая сортировка записей).

Откройте таблицу Растения в режиме конструктора и просмотрите параметры поля подстановки (щелкнув на кнопке Вид на панели инструментов). Теперь выберите любое поле в столбце Номер типа и щелкните на вкладке Подстановка на панели Свойства поля.

Рис. 6.6. Активизация раскрывающегося списка поля подстановки

Рис. 6.7. Теперь в таблице содержатся сведения о семи растениях

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

Хоть это и не очевидно, но мастер создания поля подстановки автоматически создал первую связь. О связях мы еще поговорим в этой главе.

Удаление поля подстановки

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

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

Рис. 6.8. Для удаления поля подстановки выберите в списке Тип элемента управления значение Поле

Fore kc .ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий

Зачем нужен мастер подстановок в access?

В поле таблицы можно не вводить с клавиатуры данные, а выбирать из списка.
Этот список может быть фиксированным набором значений, а может браться с другой — подстановочной таблицы.
Например есть таблица «Заказы», в которой есть поле «Сотрудник». Можно каждый раз вводить фамилию сотрудника, рискуя получить неверный ввод.
А можно создать подстановочную таблицу «Сотрудники», создать связь между основной таблицей и подстановочной. После этого Вы просто выбираете сотрудника из раскрывающегося списка.

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

Остальные ответы

Мастер подстановок

Чтобы создать подстановку для поля таблицы, проще всего использовать соответствующий мастер. Для этого нужно выбрать в качестве типа данных поля значение: Мастер подстановок. Опишем работу мастера на примере создания подстановки для поля Код студента в таблице Сессия.

Рис. 2.3. Столбец подстановки

1. На первом шаге мастер предлагает указать источник данных для столбца подстановки:

  • значения из таблицы или запроса;
  • фиксированный список значений.

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

2. Мастер просит указать таблицу или запрос, содержащие столбец подстановки. В списке таблиц нужно выбрать таблицу Студенты и активировать кнопку Далее.

3. Затем нужно двойным щелчком мыши отобрать поля, используемые в подстановке: Код студента, Фамилия и Имя. Последнее поле добавлено, чтобы иметь возможность различать студентов- однофамильцев.

4. Так как Код студента — ключевое поле, то Access автоматически выбирает его в качестве источника данных (присоединенного столбца) для поля подстановки. На этом шаге можно изменить ширину полей, используемых в подстановке, и указать, надо ли скрыть присоединенный столбец. Оставим без изменения установку по умолчанию: Скрыть ключевой столбец.

5. На последнем шаге зададим подпись для столбца подстановки Студент и нажмем кнопку Готово. Access попросит сохранить таблицу, и операция создания подстановки завершена.

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

В качестве источника данных для столбца подстановки может использоваться фиксированный список значений. Например, можно создать столбец подстановки для поля Оценка, указав на первом шаге работы мастера, что значения берутся не из таблицы, а из списка. Затем следует создать список, содержащий перечень возможных оценок: 2, 3, 4 и 5. После завершения создания столбца подстановки значения в поле Оценка можно будет не вводить с клавиатуры, а выбирать из списка. Чтобы изменить свойства поля подстановки, созданного с помощью мастера, нужно щелкнуть по ярлычку Подстановка. На рис. 2.4 видны свойства поля Код Студента. Ниже дается их краткое описание:

  • Тип элемента управления — задается представление этого поля в форме.
  • Тип источника строк — указывается тип источника данных для поля. Им может быть таблица/запрос (по умолчанию) или список значений.
  • Источник строк — определяет источник данных. Если тип источника строк — таблица/запрос, то здесь указывается имя таблицы/запроса или инструкция SQL. Если тип источника строк — список значений, то указывается список элементов, разделяемых точкой с запятой.
  • Присоединенный столбец — указывается номер столбца, значения из которого заносятся в поле.
  • Число столбцов — задает число выводящихся столбцов.
  • Заглавия столбцов — выводятся (Да) или нет (Нет) в качестве заголовков столбцов имена полей или первые элементы списка значений.
  • Ширина столбцов — задается ширина выводимых столбцов (через точку с запятой). Чтобы скрыть столбец, нужно установить его ширину, равной 0.
  • Число строк списка — задает максимальное число строк, выводящихся в раскрывающемся списке.
  • Ширина списка — задает ширину раскрывающегося списка.
  • Ограничиться списком — указывает, что в поле вводятся только значения, принадлежащие списку (Да), или разрешен ввод любых других значений (Нет). Access разрешит вводить в поле значения, не принадлежащие списку, лишь в том случае, если присоединенный столбец является первым отображаемым столбцом в списке.

Рис. 2.4. Свойства поля подстановки

Использование Мастера подстановок

Сделать более простым ввод значений в поле позволяет операция подстановки. Используя эту операцию, можно выбирать значения поля из списка. Список значений может быть как фиксированным, так и содержаться в таблице или запросе. Сформировать столбец подстановок для поля помогает Мастер подстановок (Lookup Wizard). Давайте создадим столбец подстановок для поля «КодКлиента» в таблице «Список рассылки оповещений». Это даст нам возможность при вводе данных в эту таблицу вводить не коды клиентов, которые мы не знаем, а выбирать из списка название организации, в которой работает данное лицо. Чтобы использовать Мастера подстановок (Lookup Wizard), необходимо:

  1. Открыть таблицу «Поставщики предприятия» в режиме Конструктора.
  2. Выделить поле «КодКлиента» и выбрать из списка в столбце Тип данных (Data Туре) значение Мастер подстановок (Lookup Wizard) (рис. 2.15).

Рис. 2.15. Первое диалоговое окно Мастера подстановок

Рис. 2.16. Второе диалоговое окно Мастера подстановок

Рис. 2.17. Третье диалоговое окно Мастера подстановок

Рис. 2.18. Четвертое диалоговое окно Мастера подстановок

Рис. 2.19. Пятое диалоговое окно Мастера подстановок

Применять операцию подстановки можно только к полям, содержащим текстовые и числовые данные, а также к логическим полям. Другие типы полей не могут использовать подстановку.

На нижней панели окна Конструктора таблиц находится вкладка Подстановка (Lookup), в которой определяются свойства поля, относящиеся к подстановке. Если столбец подстановки для поля не определен, значение свойства Тип элемента управления (Display Control) для текстовых и числовых полей равно Поле (Text Box), для логического типа — Флажок (Check Box). При этом остальные свойства на вкладке Подстановка (Lookup) отсутствуют.

Если вы хотите добавить к полю столбец подстановок, то установите для свойства Тип элемента управления (Display Control) значение Поле со списком (Combo Box) или Список (ListBox).[ Для просмотра таблицы в режиме Таблица эти поля абсолютно равноценны, различаются они в формах. Поле Список отображается на экране сразу в виде скроллируемого списка значений, а Поле со списком отображается в виде выпадающего списка. (О других отличиях см. разд. «Встроенные элементы управления» в гл. 9.) ]

В этом случае на вкладке Подстановка (Lookup) появляется ряд свойств, позволяющих управлять параметрами подстановки (рис. 2.20).

Рис. 2.20. Столбец подстановок в таблице «Список рассылки оповещений» Описание этих свойств приведено в табл. 2.5.

Наименование свойства Описание
Тип источника строк (Row Source Type) Свойство определяет тип источника строк для списка или поля со списком. Может принимать три значения: Таблица или запрос (Table/Query), Список значений (Value List) и Список полей (Field List).
Источник строк (Row Source) Свойство определяет источник данных элемента управления. При выборе типа источника строк Список значений (Value List) оно представляет собой список элементов, разделяемых точкой с запятой (;), в противном случае — имя таблицы или запроса или инструкцию языка SQL.
Присоединенный столбец (Bound Column) Свойство определяет номер столбца списка или поля со списком, содержащего значение элемента управления. Если это свойство имеет значение 0, то в поле передается номер строки списка, если 1 и больше, то в поле передаются данные из соответствующего столбца списка. Значение этого свойства не может превышать значение свойства Число столбцов (Column Count).
Число столбцов (Column Count) Свойство определяет число столбцов, выводимых в списке или в поле со списком. Если в качестве источника строк используется Таблица или запрос (Table/Query), то в списке будут выводиться столбцы таблицы, начиная с первого и заканчивая тем, который указан в значении данного свойства. Если в качестве источника строк используется список значений, то в списке будет выводиться указанное число столбцов, а данные в них будут располагаться построчно в последовательности, указанной в свойстве Источник строк (Row Source).
Заглавия столбцов (Column Heads) Свойство определяет, используются ли первые элементы списка или поля со списком как заголовки столбцов.
Ширина столбцов (Column Widths) Свойство определяет ширину столбцов списка или поля со списком. При использовании нескольких столбцов значения разделяются точкой с запятой (;). Задав нулевое значение, можно скрыть столбец.
Число строк списка (List Rows) Свойство определяет максимальное число строк для поля со списком. Если количество элементов списка превысит указанное число строк, в списке появится линейка прокрутки.
Ширина списка (List Width) Свойство определяет ширину раскрывающегося списка для поля со списком.
Ограничиться списком (Limit to List) Свойство определяет, могут ли вводиться в поле со списком значения, не являющиеся элементами списка.

Таблица 2.5. Свойства подстановки для поля со списком

Если значение свойства Тип элемента управления (Display Control) равно Список (List Box) (а это возможно только для текстовых и числовых полей), на вкладке Подстановка появляются только свойства, отмеченные в табл. 2.5 звездочкой (*).

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *