2.3. Тип данных и свойства поля

2.3.1. Тип данных

Определяет вид информации, сохраняемой в поле. Например, если поле имеет тип Числовой, то Access не позволит ввести в это поле текст. По типу данных поля Access определяет не только, какие данные могут сохраняться в этом поле, но и сколько места для них надо зарезервировать. Для хранения данного типа Дата/время требуется 8 байт памяти, текстовое поле требует 1 байт для каждого символа. Для изменения типа данных нужно щелкнуть левой клавишей в пустой строке столбца Тип данных. В итоге появится список (см. рис.2.7).

Рис. 2.7.

Основные типы данных:

• текстовый — алфавитно-цифровые данные, до 255 байт;

• поле МЕМО — комментарии и пояснения, до 64 Кбайт;

• числовой — числовые данные;

• дата/время — значения даты и времени;

• денежный — денежные значения;

• счетчик — автоматическая нумерация;

• логический — логические значения типа Да/Нет, Истина/Ложь

• объект OLE — фотография (рисунок), таблица Excel, документ Word или другие данные в двоичном формате;

• гиперссылка — строка, состоящая из букв и цифр и представляющая адрес гиперссылки.

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

2.3.2. Задание свойства поля

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

Установленные свойства поля таблицы автоматически переносятся на использующие это поле запросы, формы и отчеты.

Ниже приводится перечень и краткое описание свойств поля.

1). Размер поля

Задает максимальный размер данных, которые будут храниться в поле. Размер числового поля зависит от выбранного типа числовых данных, например, Текстовое поле может иметь размер от 1 до 255 символов (по умолчанию — 50 символов). Access 2007 допускает следующие диапазоны значений для числовых данных.

• Байт — целые числа в пределах от 0 до 255.

• Целое (2 байта) — целые числа в пределах от -32768 до 32767.

• Длинное целое (4 байта) — целые числа в пределах от -2 147483 648 до 2 147 483 647.

• С плавающей точкой (4 байта) — числа в пределах от -3,4*1038 до 3,4*1038 с точностью до 6 разрядов.

• С плавающей точкой (8 байт) — числа в пределах от -1,8*10308 до 1,8*10308 с точностью до 10 разрядов.

2). Формат поля

Это свойство поля задает формат представления его значений при выводе на экран или печать. Формат, установленный для поля при создании таблицы, используется по умолчанию в содержащей это поле форме или запросе. Для числовых, денежных, логических полей, а также поля типа дата/время Access 2007 предоставляет список стандартных форматов. Этот список вызывается щелчком мыши (см. рис.2.8.).

Рис.2.8.

3). Маска ввода

Маски устанавливаются только для текстовых полей и полей типа Дата/Время (см. рис.2.9).

Рис.2.9.

Они устанавливает символы форматирования для их автоматического заполнения во время ввода данных, например, добавления скобок и дефисов в полях номеров телефонов. Маску ввода можно использовать для преобразования вводимых символов к нужному регистру. В нее можно также включить строку символов, которая будет сохраняться в этом поле или использоваться для форматирования при выводе на экран. Перечень символов, используемых при задании маски ввода, приведен в таблице 2.1. Символы 0, А, L и & предполагают обязательный ввод в поле.

Таблица 2.1. Символы, используемые при задании маски ввода

Символ Назначение
0 цифра от 0 до 9
9 цифра или пробел
# цифра, пробел или символы плюс и минус
L буква
? может быть буква
A буква или цифра
A буква или цифра
& любой символ или пробел
C любой символ или пробел
< перевод всех последующих символов на нижний регистр
> перевод всех последующих символов на верхний регистр
. , : ; - / разделители, сохраняющие свой вид в строке данных
«текст» ввод постоянных текстовых символов

Описание маски ввода состоит из трех разделов, разделенных точкой с запятой. Первый раздел — это собственно маска ввода, состоящая из символов маски и постоянных символов. Второй раздел указывает, следует ли сохранять постоянные текстовые символы маски в поле. Если постоянные символы нужно включить в значение поля, то в этом разделе следует указать 0; в противном случае в этом разделе указывается 1. Если этот раздел отсутствует, то сохраняются только введенные символы. Третий раздел задает символ — указатель позиций, заполняемых при вводе. Допускается использование любого символа. Если этот раздел отсутствует, то для представления пустых символов используется символ подчеркивания (_). Маску можно настроить самим, вызвав окно Настроить маску нажатием на кнопку Список (см. рис. 2.10).

Рис.2.10.

Ниже приводятся описания некоторых масок ввода и примеры значений, которые могут быть в них введены (см. табл. 2.2).

Таблица 2.2.

Примеры масок ввода Описание маски
>L<?????????????? Смирнов; Мария (маска для ввода слова длиной до 15 букв; первая буква становится заглавной).
(999) 900-00-00;0 (381) 23-45-67; (812) 321-43-55 маска для ввода телефонных номеров; в поле хранятся все символы маски.
(\4\95) 000-00-00 (095) 123-54-87; (495) 321-55-88 маска для ввода московских телефонных номеров (код города 495); в поле хранятся только семь цифр номера без кода и дефисов.

Для удаления маски просто нажмите клавишу Del.

4). Подпись

Задает альтернативное имя, которое будет появляться в качестве заголовка поля при просмотре таблицы или созданных на ее основе запросах, формах или отчетах. Например, если установить значение № зачетки для подписи поля Код студента таблицы Студенты, то при переходе в режим таблицы это название будет выведено в качестве заголовка данного поля.

5). Значение по умолчанию

Задает значение, автоматически вводящееся в поле при создании новой записи. Для числового поля значение по умолчанию равно 0, а для текстового или Memo поля — значение Null (данные в поле неизвестны). 6). Условие на значение

Задает логическое выражение, определяющее условие для ввода или редактирования данных. Выражение принимает значение «Истина» (True), если значение в поле удовлетворяет заданному условию, и «Ложь» (False) — в противном случае. Access 2007 не позволит ввести в поле значение, не удовлетворяющее условию, и выдаст сообщение об ошибке.