Павел Дубнов - Access 2002: Самоучитель
При установке одного из этих флажков меняется только формат отображения дат, сами же даты не изменяются. Значения данных параметров определяют значения свойства Формат для отдельных полей и элементов управления.
Системные администраторы могут изменять правила, используемые Microsoft Office при интерпретации дат. Например, в качестве первого двузначного формата года, относящегося к XX столетию, можно задать не 30, а меньшее число (см. выше). Кроме того, можно изменить используемый по умолчанию формат дат, чтобы отображать значения года четырьмя цифрами, а не двумя;
• Денежный – значения денежных единиц и числовые данные, используемые в математических операциях. Эти данные должны иметь фиксированное число знаков до и после запятой. Используется также для предотвращения округления в ходе вычислений. Длина поля – 8 байт;
• Счeтчик – уникальная последовательность чисел, начинающаяся с единицы, или случайная последовательность, которую создает Access 2002 при добавлении новой записи в таблицу. Для уникальной последовательности чисел при добавлении новой записи последнее число увеличивается на 1. Эта последовательность представляет собой первичный код, который очень важен в Access 2002, он не может корректироваться пользователем и доступен только системе. Если вы удалите какую-либо запись, то будет удалено и соответствующее значение первичного кода. Длина поля для данных этого типа составляет 4 бита (или 16 байт, если в свойстве Размер поля установлен режим Репликация);
• Да/Нет – логический тип данных. Поле может принимать лишь одно из двух значений: Да или Нет, Истина или Ложь. Нулевое значение не допускается. Длина поля – 1 бит;
• Поле объекта OLE – обменный тип данных для хранения таких объектов, как таблицы Microsoft Excel, документы Microsoft Word, графические и звуковые файлы, другие двоичные данные, включенные в таблицы Access 2002 или связанные с ними. Данное поле сохраняет объем до 1 Гбайта и ограничивается объемом диска;
• Гиперссылки – текстовые данные или сочетания текстовых и цифровых данных, используемых в качестве адресов, по которым выполняется переход к файлу, фрагменту файла или странице HTML в корпоративной сети или Internet. Сохраняет до 64 000 знаков.
Адрес гиперссылки может состоять из трех частей:
– отображаемый текст – текст, который появляется на экране;
– адрес – путь к файлу или странице доступа к данным;
– субадрес – положение данных внутри файла или на странице;
• Мастер подстановок. Создает поле, позволяющее выбрать значение из другой таблицы или из списка значений, используя поле со списком. При выборе данного параметра в списке типов данных запускается мастер для автоматического определения этого поля.
Для сохранения требуется тот же размер, что и у первичного ключа, соответствующего полю подстановок, – обычно 4 байта.
Как видите, типы данных очень разнообразны. Прежде чем вы начнете определять и вводить их, обязательно ответьте себе на ряд вопросов:
• какие данные вы хотите ввести в конкретное поле. Например, нельзя сохранить текстовую информацию в поле с числовым типом данных. Нельзя также вводить в поле числового формата десятичные данные с разделителем в виде точки (разделителем должна быть запятая);
• какая длина поля вам необходима для сохранения данных и работы с ними;
• какие операции будут производиться с данными в этом поле. Например, Access 2002 позволяет суммировать данные в числовом и денежном форматах, но не делает этого в текстовом или в формате OLE;
• собираетесь ли вы сортировать или индексировать данные. Имейте в виду, что в формате OLE нельзя делать ни того, ни другого;
• будете ли вы применять групповые записи в формах или запросах. Поля формата OLE нельзя использовать для группировки записей;
• как вы собираетесь сортировать данные в поле. В текстовом поле числа рассматриваются как строки символов (1, 10, 100, 2, 20, 200 и т. д.), поэтому многие форматы дат могут сортироваться неправильно; для них следует использовать формат Дата/Время, а не цифровые значения. Чтобы сортировать числа как цифровые значения, необходимо применять числовой или денежный форматы.
Свойства полей
В Access 2002 предусмотрены два свойства полей: Формат и Маска ввода. Обе опции позволяют задавать формат, в котором данные вводятся в таблицу.
Свойство Формат рекомендуется применять при последовательном вводе данных в таблицу. Например, если для поля типа Дата/Время вы установили значение свойства Формат равным Средний формат времени, то все значения дат при их последовательном вводе будут иметь следующий вид: 12-Янв-96. Если пользователь будет вводить в базу данных значения дат в любом другом формате (скажем, в виде 01/12/96), при запоминании записи Access 2002 все равно преобразует ее в Средний формат времени.
Свойство Формат проявляется лишь при отображении значения, но не при его запоминании. Пока введенные данные не появились на экране, невозможно проверить, в каком формате они были введены. Предположим, вы непременно хотите отобразить данные именно в том формате, в котором они вводились. Тогда вам не следует применять свойство Формат. В заключение отметим, что оно используется в полях числового и денежного типа, Дата/Время, Счетчик и Да/Нет. Свойство Формат не определено для полей текстового типа, полей Memo и гиперссылок, хотя в принципе такая настройка возможна.
Свойство Маска ввода целесообразно при отображении литеральных (символьных) констант, а также при вводе данных в пустые графы (бланки, таблицы и т. д.) – например, если все номера телефонов в списке имеют один формат. Использование маски ввода обеспечит сохранение информации в определенном формате. Таким образом, вы всегда сможете установить, в каком виде будут вводиться данные в каждый документ. Предположим, надо, чтобы все вводимые данные о кодах и телефонах городов области содержали одинаковое количество знаков. Перед вводом предварительно задайте свойство Маска ввода, и в каждый документ (таблицу) будет помещено необходимое число символов.
Если вы зададите одновременно оба свойства, произойдет следующее: Access будет применять Маску ввода при добавлении или редактировании данных, а Формат – при отображении сохраненной записи.
Установка значений свойств Маска ввода и Формат
Теперь рассмотрим установку значений свойств Маска ввода и Формат на конкретном примере. Откроем таблицу Страны в режиме конструктора.
Свойство Маска вводаЗначение свойства Маска ввода может содержать до трех разделов, разделенных точкой с запятой (;).
Первый – представляет саму маску ввода (например,!(999) 000-0000). Перечень знаков, используемых для определения масок ввода, приводится в справочной системе Access 2002.
Второй – определяет режим занесения в таблицу текстовых констант, добавляемых к знакам, которые вводятся пользователем. 0 в данном компоненте указывает, что текстовые константы (например, скобки и дефисы в маске ввода телефонных номеров) сохраняются вместе с введенными пользователем значениями; значение 1 или пустое значение данного раздела свидетельствует о том, что сохраняются только знаки, введенные пользователем.
Третий – определяет знак, используемый для изображения пустых позиций в маске ввода, в которые помещаются вводимые пользователем знаки. В этом разделе можно указать любой знак; чтобы отобразить пустую строку, введите пробел, заключенный в кавычки (" ").
Чтобы задать свойство в поле Код страны, введите соответствующую строку в верхнюю часть окна (см. рис. 3.9).
Рис. 3.9Если щелкнуть в ее пределах (см. рис. 3.10), можно будет вводить значения вручную. Вначале введем значение 0L → L в строку Маска ввода. Начиная со следующей вводимой записи и до тех пор, пока маска ввода не будет снова изменена, коды стран будут задаваться в том виде, который показан на рис. 3.11 для кодов Индии и Пакистана. Это происходит в соответствии с правилами настройки форматов, приведенными выше (раздел «Свойства полей»). (Мы не обсуждаем сейчас вопрос о смысле такой установки, а просто рассматриваем возможности маски ввода.)
Рис. 3.10Рис. 3.11
Правда, при переходе из режима конструктора в режим просмотра таблицы (см. рис. 3.10 и 3.11) Access 2002 может предупредить пользователя о возможных опасностях, выдав информацию о том, что условия целостности данных изменены и информация может противоречить новым условиям, предложив при этом проверить существующие данные в новых условиях. Если подобное предложение поступит, то с ним имеет смысл согласиться и ответить Да.
Для выбора значений маски ввода может также использоваться мастер маски ввода. Если вы захотите воспользоваться его помощью и щелкнете по кнопке