Существует несколько инструментов для создания таблиц в Access (режим таблицы, Конструктор, Мастер таблиц, Импорт таблиц). Более полезно изучить технологию построения таблиц в режиме конструктора, т.к. этот инструмент предоставляет ряд дополнительных возможностей для настройки таблиц.
Создание таблицы в MS Access осуществляется в окне базы данных.
На вкладке Создание в группе Таблицы щелкните Конструктор таблиц.
Приложение Access вставляет новую таблицу в базу данных и открывает ее в режиме конструктора.
Рисунок 1. Таблица в режиме конструктора
В верхней части окна таблицы в режиме конструктора расположены столбцы, предназначенные для ввода имени, типа данных и краткого описания полей. В нижней части окна таблицы в режиме конструктора отображаются свойства текущего поля.
Определение полей
В столбце Имя поля печатаются имена полей таблицы. Имя поля может содержать до 64 символов, включая пробелы, за исключением точки, восклицательного знака и квадратных скобок.
В столбце Тип данныхопределяется тип данных этого поля.
В столбце Описание печатаются комментарии, описывающие данное поле.
Типы данных
MS Access поддерживает девять типов данных:
Таблица 10.1 Типы данных
Тип данных
Использование
Размер
Текстовый
Алфавитно-цифровые данные
До 255 байт
Поле МЕМО
Алфавитно-цифровые данные
До 64 000 байт
Числовой
Числовые данные
1,2,4,8 или 12 байт
Дата/время
Даты и время
8 байт
Денежный
Данные о денежных суммах
8 байт
Счетчик
Уникальное длинное целое, генерируется Access при создании каждой новой записи
4 байта
Логический
Логические данные
1 бит
Поле объекта OLE
Картинки, диаграммы
До 1 Гбайт
Гиперссылка
Адрес ссылки (путь) на документ или файл
До 2048 символов
Для каждого поля таблицы выберите тип данных в соответствии с назначением и использованием поля.
Для символьных данных следует выбирать Текстовый тип. Поле Мемо используется в случаях, когда размер текста превышает 255 символов или в тексте встречаются такие символы форматирования, как табуляция или возврат каретки.
Тип данных Дата/время используется для хранения календарных дат или значений времени и позволяет выполнять вычисления в единицах измерения времени: минутах, секундах, часах, днях, месяцах и годах.
Тип данных Счетчик специально предназначен для автоматической генерации значений первичного ключа. Таблица не может содержать более одного поля с таким типом данных.
Логический тип данных используется для хранения значений Истина и Ложь. Он особенно полезен, когда нужны флажки, отмечающие оплаченные счета, выполненные заказы и т.п.
Поле OLEпозволяет хранить такие данные, как рисунки, диаграммы или звуковые фрагменты, которые могут иметь динамические связи с другими приложениями Windows.
Тип данных Гиперссылкапредназначен для хранения простых или сложных «ссылок» на внешний файл или документ.
Мастер подстановок
Кроме перечисленных выше девяти типов данных Access предоставляет мастер подстановок, который, в частности, помогает заполнить поля внешних ключей, не нарушив целостности данных. Кроме того, мастер помогает установить свойства подстановки для кодового поля основной таблицы таким образом, что вместо кодов будут видны более информативные значения из таблицы подстановок.
В первом окне мастера необходимо выбрать, откуда столбец подстановок получает значения: из фиксированного набора (и тогда этот столбец Вы должны будете сами ввести в следующем окне мастера) или из другой таблицы или запроса.
В следующем окне выберите таблицу, в которой находятся подстановочные значения. Далее выберите поля таблицы, которые вы хотите включить в список подстановки (включите ключевое поле и одно или несколько описательных полей, которые помогут вам различать элементы столбца подстановки).
Свойства полей
Для каждого поля таблицы можно задать значения свойств, список которых зависит от выбранного типа данных. Некоторые значения свойств устанавливаются по умолчанию.
Свойство
Назначение
Размер поля
Задает максимальное число символов для ввода в данное поле
Новые значения
Определяет способ генерации новых значений для поля счетчика
Формат поля
Задает формат вывода значений данного поля
Число десятичных знаков
Определяет число десятичных знаков, используемых при отображении чисел
Маска ввода
Задает маску ввода, облегчающую ввод данных в поле
Подпись
Определяет более содержательное название поля, которое выводится в качестве подписи поля
Значение по умолчанию
Позволяет указать значение, автоматически вводящееся в поле при создании новой записи
Условие на значение
Определяет требования к данным, вводимым в поле
Сообщение об ошибке
Позволяет указать текст сообщения, выводящегося на экран, если введенные данные нарушают условие, определенное в свойстве Условие на значение
Обязательное поле
Указывает, требует ли поле обязательного ввода значения
Пустые строки
Определяет, допускается ли ввод в данное поле пустых строк («»)
Индексированное поле
Определяет индекс, создаваемый по одному полю
Прокомментируем некоторые свойства.
Для символьных данных обычно выбирают тип данных текстовый. Свойство Размер поля определяет объем памяти, необходимый для хранения данных (по умолчанию 255 символов). Указав максимальную длину текстового поля в свойстве Размер поля, можно сэкономить память, необходимую для хранения данных. Например, очевидно, что для поля Название Фирмы достаточно установить Размер поля20 символов.
СвойствоПодпись. Несмотря на то, что Access разрешает использовать пробелы в любых именах, целесообразнее обходиться в именах полей без пробелов. Тогда можно использовать свойство Подпись, чтобы задать более содержательное название поля с пробелами, которое Access будет выводить в элементах управления форм и в заголовках отчетов.
Свойство Условие на значение. Заданное условие всегда будет проверяться при вводе или изменении значения поля в таблице. Access не позволит ввести данные, не удовлетворяющие этому условию.
Условие на значение задается выражением, которое состоит из операторов сравнения и операндов.
Операторы сравнения: <, <=, >, >=, =, <>, IN (проверяется на равенство любому значению из списка), BETWEEN (проверяется, что значение поля находится в заданном диапазоне; верхняя и нижняя границы разделяются логическим оператором AND); LIKE (проверяется соответствие текстового поля заданному шаблону символов).
Если выражение не содержит оператора, Access использует оператор «=». Можно использовать несколько сравнений, связанных логическими операторами OR, AND.
Текстовые значения всегда должны заключаться в кавычки. Например, чтобы ограничить ввод в поле Название Фирмы двумя фирмами Sitilink и Lizarin можно использовать в качестве условия на значение для этого поля выражение: «Sitilink» OR «Lizarin», или IN («Sitilink», «Lizarin»). Если в качестве операнда используется дата, она должна быть заключена в символы (#), например, BETWEEN #01/01/2000# AND #31/12/2000#. Тогда Access позволит вводить в данное поле только данные за 2000 год.
Оператор LIKE проверяется соответствие текстового поля заданному шаблону символов. Для задания шаблона используются следующие подстановочные символы:
? – один произвольный символ;
* – любое (включая нулевое) количество произвольных символов; используется для замены последовательности символов;
# – одна произвольная цифра;
[ ] – позволяют определить условие, чтобы определенная позиция текстового поля содержала только символы, указанные в квадратных скобках; [А–Я] – любая буква; [0–9] – любая цифра;
! – позволяет определить условие, чтобы указать, что определенная позиция может содержать любой не входящий в список символ: условие LIKE«[!0–9АВ]» проверяет строку, начинающуюся с любого символа кроме цифры и букв А и В.
Индексированное поле. Индекс - средство MS Access, ускоряющее поиск и сортировку в таблице. Ключевое поле таблицы индексируется автоматически. Не допускается создание индексов для полей типа MEMO и «Гиперссылка» или полей объектов OLE.
Задание маски ввода
Чтобы облегчить ввод форматированных данных (например, номеров телефонов или дат), Access позволяет задать маску ввода.
Некоторые символы, используемые для задания маски ввода:
Символ маски
Описание
В данную позицию должна быть введена цифра; не допускается ввод знаков «плюс» и «минус»
В данную позицию может быть введена цифра или пробел; не допускается ввод знаков «плюс» и «минус»
#
В данную позицию может быть введена цифра, пробел, знак «плюс» или «минус»
L
В данную позицию должна быть введена произвольная буква
?
В данную позицию может быть введена буква
А
В данную позицию должна быть введена буква или цифра
а
В данную позицию может быть введена буква или цифра
&
В данную позицию должен быть введен произвольный символ или пробел
\
Указывает, что следующий символ следует рассматривать в качестве постоянного символа.
>
Преобразует все цифры справа к верхнему регистру
<
Преобразует все цифры справа к нижнему регистру
Маска ввода состоит из трех частей, разделенных точкой с запятой. Первая часть представляет собственно маску ввода, состоящую из символов маски и постоянных символов. Необязательная вторая часть указывает Access, нужно ли сохранять постоянные символы маски в этом поле (0 – постоянные символы маски включаются в значение поля, 1 – сохраняться будут только введенные символы). Необязательным третьим компонентом маски ввода является символ, используемый для указания заполняемых при вводе позиций (по умолчанию используется знак подчеркивания).
Проще всего задавать маску ввода с помощью мастера по созданию масок ввода. Для этого щелкните на поле (в верхней части окна таблицы в режиме конструктора), для которого необходимо создать маску ввода. А затем – на ячейке свойства Маска ввода, расположенной в нижней части этого окна. Справа появится кнопка с тремя точками – кнопка построителя. Щелкните на ней , чтобы воспользоваться помощью мастера по созданию масок ввода.