Использование мастера подстановок и создание полей с несколькими значениями
Задание: работая с таблицей «Заказы» (поле «КодСотрудника») с помощью мастера подстановок создать поле с несколькими значениями.
1. Для возможности внесения изменения в типы полей сначала необходимо открыть Схему данных (Relationships) и удалить все связи той таблицы, которую необходимо модифицировать.
2. Откройте таблицу «Заказы» в режиме конструктора (Design). Рядом с именем поля «КодСотрудника» выберите из выпадающего меню тип данных Мастер подстановок (Lookup Wizard).
3. Используйте значение из таблицы. В мастере подстановок установите переключатель Объект «Столбец подстановки» будет использовать значения из таблицы или запроса (I want the lookup column to look up the values in a table or query) и нажмите кнопку Далее (Next).
4. Выберите в списке таблицу «Сотрудники» и нажмите кнопку Далее (Next).
5. В списке Доступные поля (Available Fields) выберите поля «Фамилия», «Должность».
6. Щелкните значок «больше» (>), чтобы переместить выбранные поля в список Выбранные поля (Selected Fields) - Далее (Next).
7. Можно выделить одно из полей, чтобы сортировать по нему элементы для подстановки, и нажмите кнопку Далее (Next). Нажмите кнопку По возрастанию, чтобы переключиться в режим сортировки по убыванию. Надпись на кнопке изменится на По убыванию. Нажмите кнопку еще раз, чтобы переключиться обратно. Нажмите кнопку Далее (Next).
8. При необходимости отрегулируйте ширину столбцов в поле постановок и нажмите кнопку Далее (Next).
9. В группе Сохранить несколько значений для этой подстановки? установите флажок Разрешить несколько значений (Allow Multiple Values) (этот флажок должен быть установлен, чтобы разрешить хранение одновременно нескольких значений) - Готово (Finish).
10. Сохраните изменения.
11. Перейдите в режим таблицы (Datesheet) и измените любую запись в поле Код сотрудника таблицы «Заказы», кликнув по соответствующему полю с данными. Обратите внимание, что при работе с полем появляется выпадающий список сотрудников (фамилия и должность), в котором вы можете выбрать одного или нескольких сотрудников для обработки заказа, установив маркер напротив их фамилий в списке.
12. Перейдите в режим конструктора (Design) и убедитесь, что тип данных поля «КодСотрудника» остался числовой (это важно при связи таблиц).
13. Сохраните изменения в таблице.
14. Откройте Схему данных (Relationships) и восстановите связи таблицы «Заказы». Обратите внимание, что при отображении таблицы «Заказы» на схеме произошли изменения.
15. Сохраните схему данных.
16. Аналогичным образом с помощью мастера подстановок отредактируйте в таблице «Товары» поле «КодКатегории» с одним исключением: поле должно иметь только одно значение (т.е. несколько значений в поле быть не может). Для подстановки необходимо взять из таблицы «Категории Товаров» поле «Название Категории». После проделанной работы убедитесь, что при редактировании данных в поле таблице появляется выпадающий список, не допускающий выбора нескольких значений. Также убедитесь (в режиме Конструктора (Design)), что тип поля отсталая числовой.
17. Сохраните изменения в таблице, закройте таблицу, восстановите связи в Схеме данных (Relationships), сохраните Схему данных (изменений в отображении таблицы «Товары» на схеме данных быть не должно, т.к. нет возможности выбора нескольких значений в поле).
Просмотр сведений об объектах в базе данных с помощью архивариуса (средства документирования базы данных)
Один из способов изучить определенную базу данных – воспользоваться архивариусом. Архивариус используется для построения отчета, содержащего подробные сведения об объектах в базе данных. Архивариус также является инструментом для документирования базы данных. Сначала следует выбрать, какие объекты будут подробно рассмотрены в отчете. Когда запускается архивариус, его отчет содержит все данные о выбранных объектах базы данных.
1. На вкладке Работа с базами данных (Database Tools) в группе Анализ (Analysis) щелкните Архивариус (Средство документирования базы данных) (Database Documenter).
2. В диалоговом окне Архивариус (Database Documenter) щелкните вкладку, на которой представлен тот тип объекта базы данных, который нужно изучить. Чтобы создать отчет по всем объектам в базе данных, щелкните вкладку Все объекты (All Object Types).
3. Выберите один или несколько объектов из перечисленных на вкладке. Чтобы выбрать все объекты на вкладке, щелкните Выделить все (Select All).
4. Щелкните ОК.
5. Изучите отчеты, закройте окно с отчетами.
Сохранение и закрытие базы данных
1. Сохраните все изменения.
2. Завершите работу с Microsoft Access.
Приложение 1
Описание таблиц
Таблица «Заказы»
Имя поля | Тип | Размер | Другие свойства |
КодЗаказа | Счетчик | Длинное целое | Ключ |
КодКлиента | Текстовый | Обязательное поле; Индексированное - Да (допускаются совпадения) | |
КодСотрудника | Числовой | Длинное целое | Обязательное поле; Индексированное - Да (допускаются совпадения) |
ДатаЗаказа | Дата/время | Маска ввода - краткий формат даты | |
ТребуемаяДатаВыполнения | Дата/время | Отображать элемент выбора даты (Show Date Picker) - для дат | |
ОжидаемаяДатаВыполнения | Дата/время | Отображать элемент выбора даты (Show Date Picker) - для дат | |
НомерСчетаКлиента | Текстовый | Индексированное - Да (совпадения допускаются) |
Таблица «Доставка»
Имя поля | Тип | Размер | Другие свойства |
КодДоставки | Счетчик | Длинное целое | Ключ |
КодТ ранспортнойКомпании | Числовой | Длинное целое | Обязательное поле |
ДатаДоставки | Дата/время | Обязательное поле; Отображать элемент выбора даты (Show Date Picker) - для дат | |
Тариф | Денежный | Число десятичных знаков - 2. |
Таблица «Фактический адрес доставки»
Имя поля | Тип | Размер | Другие свойства |
КодФакт Адреса | Счетчик | Длинное целое | Ключ |
КодКлиента | Текстовый | Обязательное поле | |
Регион | Текстовый | Обязательное | |
Город | Текстовый | Обязательное | |
Улица | Текстовый | Обязательное | |
Дом | Текстовый | Обязательное | |
Корпус/строение | Текстовый | Необязательное | |
Индекс | Текстовый | Маска ввода 999999 | |
Телефон | Текстовый | Маска ввода (999) 000- 0000 |
Таблица «Поставщики»
Имя поля | Тип | Размер | Другие свойства |
КодПоставщика | Счетчик | Длинное целое | Ключ |
Организация | Текстовый | Обязательное, Индексированное - да (совпадения не допускаются) | |
Фамилия | Текстовый | Обязательное | |
Имя | Текстовый | Обязательное | |
Должность | Текстовый | Обязательное | |
РабочийТ елефон | Текстовый | Маска ввода (999) 000-0000 | |
МобильныйТелефон | Текстовый | Обязательное, Маска ввода (999) 000-0000 | |
Факс | Текстовый | Маска ввода | |
Адрес | Текстовый | Обязательное | |
Город | Текстовый | Обязательное | |
Штат | Текстовый | Обязательное | |
Индекс | Текстовый | Маска ввода 999999 |
Таблица «Сотрудники»
КодСотрудника | Счетчик | Длинное целое | Ключ |
Имя | Текстовый | Обязательное | |
Фамилия | Текстовый | Обязательное поле; Индексированное - Да (совпадения допускаются) | |
Должность | Текстовый | Обязательное поле; Индексированное - Да (совпадения допускаются) | |
Адрес | Текстовый | Обязательное | |
Город | Текстовый | Обязательное | |
Штат | Текстовый | Обязательное | |
Индекс | Текстовый | Маска ввода 999999 | |
Телефон | Текстовый | Обязательное, Маска ввода (999) 000-0000 | |
ДатаРождения | Дата/время | Обязательное поле; Маска ввода - краткий формат даты. | |
ДатаНайма | Дата/время | Обязательное поле; Условие на значение <=Now(); Сообщение об ошибке - «Дата должна быть не позднее текущей». Отображать элемент выбора даты (Show Date Picker) - для дат | |
Заметки | Поле MEMO | Необязательное |
Таблица «Транспортная_Компания»
Имя поля | Тип | Размер | Другие свойства |
Ко дТ ранспортнойКомпании | Счетчик | Длинное целое | Ключ |
Назв аниеКомпании | Текстовый | Обязательное, Индексированное - да (совпадения не допускаются) | |
Фамилия | Текстовый | Обязательное | |
Имя | Текстовый | Обязательное | |
Улица | Текстовый | Обязательное | |
Город | Текстовый | Обязательное | |
Штат | Текстовый | Обязательное | |
Индекс | Текстовый | Маска ввода 999999 | |
Телефон | Текстовый | Обязательное, Маска ввода (999) 000-0000 |
Таблица «Клиенты»
Имя поля | Тип | Размер | Другие свойства |
КодКлиента | Текстовый | Ключ | |
Имя | Текстовый | Обязательное | |
Фамилия | Текстовый | Обязательное | |
Адрес | Текстовый | Обязательное | |
Город | Текстовый | Обязательное | |
Штат | Текстовый | Обязательное | |
ПочтовыйИндекс | Текстовый | Маска ввода 9999999 | |
Страна | Текстовый | Обязательное | |
НомерТ елефона | Текстовый | Маска ввода (999) 999- 9999 | |
КредитнаяКарта | Числовой | Байт | Значение по умолчанию 0 |
НомерКредитнойКарты | Текстовый | Индексированное - ДА (совпадения не допускаются) |
Таблица «Подробности_Заказа»
Имя поля | Тип | Размер | Другие свойства |
КодЗаказа | Числовой | Длинное целое | Составной ключ; Обязательное; Индексированное - ДА (допускаются совпадения) |
КодТовара | Числовой | Длинное целое | |
Количество | Числовой | Целое | Обязательное; Значение по умолчанию - 0 |
Скидка | Числовой | Двойное с плавающей точкой | Необязательное; Формат поля - процентный, число десятичных знаков - 0; значение по умолчанию - 0. |
КодФактическогоАдреса | Числовой | Длинное целое | Необязательное поле |
КодДоставки | Числовой | Длинное целое | Необязательное поле |
Приложение 2
Маска ввода
Маска ввода представляет собой набор текстовых констант и знаков маски, определяющий, какие данные и каким образом можно вводить. Например, с помощью маски ввода можно потребовать, чтобы пользователи вводили даты или телефонные номера так, как принято в определенной стране, например:
· ДД.ММ.ГГГГ
· (__ )____ -____ доб._____
Маска ввода может состоять из трех частей, которые разделены точкой с запятой. Первая часть является обязательной, а две остальные — необязательными. Пример маски ввода для телефонных номеров в формате США:
(999)000-0000;0;_
Первая часть определяет строку маски и состоит из местозаполнителей и текстовых констант. Вторая часть указывает, следует ли сохранять знаки маски вместе с данными в базе данных. Введите О, если в базе данных необходимо сохранить маску и данные. Введите 1, если необходимо сохранить только данные. Третья часть определяет местозаполнитель, который служит для обозначения позиции данных. По умолчанию в Access используется знак подчеркивания (_). Если нужно использовать другой знак, введите его в третью часть маски. По умолчанию позиция принимает только один знак или пробел.
Примеры масок ввода
В следующей таблице приведены некоторые способы применения масок ввода.