Упражнение 6. Параметры поля

Для того, чтобы обеспечить возможность хранения в базе данных разнообразной информации, Access предлагает большой набор типов данных (табл. 1).

Чтобы сделать работу со списком контактов более продуктивной, следует изменить типы данных некоторых полей.

1. В области переходов выделите таблицу Список, как показано на рис. 14, щелкните на ней правой кнопкой мыши и выберите в контекстном меню команду Конструктор.Выбранная таблица откроется в режиме конструктора.

Таблица 1.Типы данных

Название типа Описание
Текстовый Поле МЕМО Числовой Дата/Время Денежный Счетчик   Логический   Поле объекта OLE   Гиперссылка Текст длиной до 255 символов Текст длиной до 65 535 символов Числа различных форматов Дата и (или) время Денежные значения различных форматов Счетчик, который автоматически увеличивается на единицу с добавлением каждой новой записи Величины, способные принимать только два значения: да или нет, либо 1 или 0 Поля, позволяющие вставлять рисунки, звуки и данные других типов Ссылки, дающие возможность открыть объект Access (таблицу, форму, запрос и т.п.), файл другого приложения или веб-страницу

2. Описание контакта может быть достаточно длинным, а максимальная длина текстовых полей ограничена 256 символами, поэтому измените тип поля Описание на Поле МЕМО.

3. Щелкните в поле Дата.

4. Для удобства прочтения даты контакта измените формат ее отображения, выбрав в раскрывающемся списке Формат поля пункт Длинный формат даты, как показано на рис. 14.

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

5. Введите в поле Значение по умолчанию функцию Date ( ), которая возвращает текущую дату.

В некоторых случаях требуется не только задать тип данных поля, но и ограничить его возможные значения определенным интервалом или более сложным правилом отбора. Такое правило вводится в поле Условие на значение. Предположим, вы точно знаете, что все контакты, которые будут заноситься в список, состоятся после 1 января 2007 года. Чтобы избежать ошибок, можно заставить Access сообщать вам о вводе неверной даты.

Упражнение 6. Параметры поля - student2.ru

Рис. 14. Выбор формата

6. Упражнение 6. Параметры поля - student2.ru В поле Условие на значениещелкните на кнопке построителя выражений. Откроется диалоговое окно, показанное на рис. 15. Для задания условий или значений определенных параметров Accessпредлагает большой набор математических операций и функций. Построитель выражений помогает ориентироваться во всем многообразии функций Access. Верхнее прокручивающееся поле построителя содержит конструируемое выражение. Его можно изменять как путем непосредственного редактирования текста, так и с помощью кнопок и списков построителя.

Рис. 15.Построитель выражений

7. Необходимо, чтобы дата записи была позднее, то есть больше даты 1 января 2007 г. Поэтому щелкните на кнопке >, чтобы добавит нужное условие.

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

8. Дважды щелкните на папке Функции в левом списке построителя выражений.

9. Щелкните на папке Встроенные функции, чтобы вывести список стандартных функций Access.

10. В среднем списке выберите категориюДата/время.

11. Двойным щелчком на имени функции DataValue добавьте ее в поле выражения. Вместо местозаполнителя аргумента «stringexpr» нужно ввести конкретную дату в строковом формате.

12. В поле выражения щелчком выделите текст «stringexpr» и введите строку «01.01.2007».

13. Щелкните на кнопку ОК.

14.

В поле Сообщение об ошибке введите текст Неверная дата, который будет появляться при вводе даты, более ранней, чем 1 января 2007 года. Окончательный набор параметров для поля Датапоказан на рис. 16.

Упражнение 6. Параметры поля - student2.ru

Рис. 16. Параметры для поля Дата

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

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

17.

Щелкните в ячейке Дата второй строки, измените ее содержимое на значение 12.11.2006 и нажмите клавишу Tab,чтобы перейти к следующему полю. Так как модифицированная дата предшествует 1 января 2007 г., что противоречит настроенному условию, Access не позволит убрать курсор из текущей ячейки и откроет окно сообщения с текстом, введенным вами в поле Сообщение об ошибке конструктора таблицы на шаге 14 (рис. 17). Такое сообщение будет появляться до тех пор, пока вы не скорректируете дату.

Упражнение 6. Параметры поля - student2.ru

Сообщение об ошибке

Рис. 17.Сообщение о неверных данных

18. Щелкните на кнопке ОК.

19. Исправьте дату на 02.02.2007.

20. Закройте таблицу Список.

Упражнение 7. Индекс

Для ускорения поиска данных о конкретном человеке в таблице Контакт удобно рассортировать записи по алфавиту. Чтобы назначить сортировку по полю Фамилия, выполните следующие шаги.

1. В области переходов выделите таблицу Контакт (рис.18).

2. Чтобы открыть таблицу в режиме ввода данных, щелкните на ней правой кнопкой мыши и выберите в контекстном меню команду Открыть.

Упражнение 6. Параметры поля - student2.ru

Рис. 18. Сортировка фамилий по алфавиту

3. В конце таблице щелкните на заголовке Фамилия, чтобы выделить столбец.

4. Щелчком на кнопке По возрастанию в группе Сортировка и фильтр вкладкиГлавная упорядочите записи столбца фамилий таблицы по алфавиту.

5. Вставьте в таблицу еще несколько человек с фамилией Суханов. Например, введите в указанном порядке записи Николай Суханов, Анатолий Суханов и Виктор Суханов.

6. Чтобы повторить сортировку, закройте окно таблицы Контакт и вновь откройте таблицу. Записи окажутся расположенными так, как показано на рис. 19. Фамилии упорядочены по алфавиту, но имена людей не отсортированы. Если бы в таблице было несколько десятков людей с фамилией Суханов, поиск нужного человека существенно бы усложнился. Чтобы выполнить сортировку сразу по нескольким полям, следует воспользоваться сложным индексом.

Упражнение 6. Параметры поля - student2.ru

Рис. 19. Несколько человек с одинаковыми фамилиями

7. Щелчком на кнопке Режим переключитесь в режим конструктора.

8. Чтобы открыть окно индексов таблицы Контакт(рис.20), щелкните на кнопке Индексы в группе Показать и скрыть вкладкиКонструктор. В окне индексов есть список со столбцами названия индекса, имени поля, по которому выполняется индексация, и режима сортировки (по возрастанию или убыванию). Индекс PrimaryKey является ключом таблицы, однозначно идентифицирующим ее записи. Данный индекс простой, то есть он назначает сортировку только по одному полю Код. Чтобы записи с одинаковыми фамилиями располагались по алфавиту имен, следует создать индекс Фамилия с условием сортировки по

полям Фамилияи Имя.

Упражнение 6. Параметры поля - student2.ru

Рис. 20. Индексы

9. Введите в поле названия индекса текст Фамилия.

10. Нажмите клавишу Tabи выберите пункт Фамилия в раскрывающемся списке ячейки Имя поля.В столбце Порядок сортировки автоматически появится вариант По возрастанию.

11. Щелкните правой кнопкой мыши в той строке, которая расположена ниже строки индекса Фамилия.

12. Выберите в контекстном меню команду Вставить строки, чтобы добавить одну пустую строку.

13. В новой строке столбца Имя поля щелкните на кнопке раскрывающегося списка.

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

15. Закройте окно индексов.

16. Щелкните на кнопке Режим, чтобы переключиться в режим редактирования таблицы.

17. Ответьте Да на запрос о необходимости сохранения таблицы. В результате имена окажутся выстроенными по алфавиту (рис. 21).

Упражнение 6. Параметры поля - student2.ru

Рис. 21.Сортировка по двум полям

Наши рекомендации