Access условие на значение поля
Контроль и проверка введенных данных
Microsoft Access может осуществлять проверку данных, вводимых в поле или запись таблицы. Чтобы проверить значение, вводимое в поле или запись, необходимо задать условие на значение. Кроме того, можно указать текст сообщения, которое должно появиться на экране, если введенные данные не соответствуют данному условию. В Microsoft Access существует два типа условий на значение:
- условия на значение поля;
- условия на значения записи.
Очень важно, что оба типа условий вводятся в систему на уровне таблицы. Это означает, что проверка вводимых данных на соответствие этим условиям будет выполняться независимо от способа ввода данных, будь то прямое редактирование записей в режиме Таблицы, или импорт (копирование) из другой таблицы, или редактирование записи в форме (на странице доступа к данным). Это позволяет надежно защищать данные от ошибок ввода.
Условие на значение поля позволяет обеспечить ввод корректных данных в поле записи. Проверка введенного значения осуществляется при переходе к другому полю или другой записи. Если введенное значение не соответствует заданному условию, на экран выводится сообщение, указанное пользователем, или стандартное сообщение, если пользователь не определил свое. Чтобы определить условие на значение поля, необходимо:
- Открыть таблицу в режиме Конструктора.
- В верхней части окна выбрать нужное поле.
- Открыть на панели свойств поля вкладку Общие (General) и выбрать свойство Условие на значение (Validation Rule), а затем ввести необходимое условие. Задать условие на значение можно при помощи Построителя выражений (рис. 2.35), нажав на кнопку Построителя справа. Выражения, используемые в условиях, возвращают значения Истина (True), и в этом случае данные корректны, или Ложь (False) — данные некорректны. Одним из самых простых выражений, которое может встретиться в условии, является > 0, т. е. в поле могут вводиться только положительные числа. Для ввода более сложных выражений нужно знать правила построения выражений в Access. Эти правила, а также правила пользования Построителем выражений, подробно изложены в разд. «Создание выражений с помощью Построителя выражений» гл. 4.
- Выбрать свойство Сообщение об ошибке (Validation Text) и ввести сообщение, которое будет выводиться на экран, если данные не соответствуют заданному условию.
Если условие на значение накладывается на поле, которое уже содержит данные, то при сохранении таблицы Microsoft Access выдаст вопрос, нужно ли применять новое условие к существующим данным.
Чтобы проверить соответствие текущих данных в таблице условиям на значение, следует на заголовке таблицы в режиме конструктора нажать правую кнопку мыши, а затем выбрать команду Проверка условий (Test Validation Rules).
Рис. 2.35. Применение Построителя выражений при задании свойства Условие на значение
Условия на значение записи отличаются от условий на значение поля тем, что в условиях на значение записи допускаются ссылки на разные поля. Это позволяет использовать такие условия для сравнения значений, введенных в разные поля таблицы. Условия на значение записи проверяются при сохранении записи. Чтобы определить условие на значение записи, необходимо:
- Открыть таблицу в режиме Конструктора.
- Нажать на панели инструментов Конструктор таблиц (Table Design) кнопку Свойства (Properties) или, щелкнув правой кнопкой мыши по заголовку таблицы, выбрать из контекстного меню команду Свойства (Properties). Откроется диалоговое окно Свойства таблицы (Table Properties).
- Третья строка в этом окне — Условие на значение (Validation Rule), которое позволяет ввести выражение для условия на значение записи. Например, в таблице «Заказы» (Orders) нужно указать, что дата исполнения заказа должна быть больше, чем дата размещения. Если воспользоваться Построителем выражений, то видно, что в окне Построителя появилась папка Заказы, а рядом — список полей таблицы «Заказы» (Orders) (рис. 2.36).
Рис. 2.36. Ввод условия с помощью Построителя выражений
Выделите в списке значение ДатаИсполнения и нажмите на кнопку Вставить (Paste) или просто дважды щелкните мышью по этому элементу. В верхнем поле окна Построителя появится имя поля в квадратных скобках. Нажмите кнопку >. Аналогичным способом выберите из списка элемент ДатаРазмещения. В результате в верхнем поле появится выражение [ДатаРазмещения] > [ДатаИсполнения]. Нажмите кнопку ОК.
Если в выражениях используются ссылки на название полей таблицы, то они окружаются квадратными скобками.
- Выбрать свойство Сообщение об ошибке (Validation Text) и ввести сообщение, которое будет выдаваться на экран, если данные не соответствуют указанному условию.
Для таблицы можно указать только одно выражение, определяющее условия на значения. Если же необходимо наложить более одного условия, то в ячейке свойства Условие на значение (Validation Rule) выражения можно объединить при помощи оператора And.
Вне зависимости от того, заданы условия на значение поля или записи, при попытке выхода из текущего поля, после ввода данных Microsoft Access проверяет, являются ли введенные данные допустимыми для этого поля. Если значение не является допустимым, появляется предупреждающее сообщение. Для того чтобы выйти из поля, необходимо ввести правильное значение или отменить внесенные изменения.
Значение поля может оказаться недопустимым по следующим причинам.
- Значение несовместимо с типом данных поля (например, в числовых и текстовых полях или в поле даты). Если введено значение, не соответствующее типу данных поля, Microsoft Access пытается преобразовать его в правильный тип данных. Однако некоторые данные нельзя преобразовать в данные другого типа. Например, нельзя хранить текстовое значение в числовом поле.
- Данные нарушают условие на значение, заданное в свойстве Условие на значение (Validation Rule) этого поля.
- В поле необходимо ввести данные, а они не были введены.
Данные проверяются также при переходе на другую запись. Перед сохранением записи Microsoft Access проверяет все условия, заданные в свойстве Условие на значение (Validation Rule) записи. Кроме того, если таблица, в которую вносятся изменения, имеет ключ или уникальный индекс, то проверяется, что изменяемая запись не содержит в этом поле или полях значений, совпадающих со значениями в других записях таблицы. Если запись нельзя сохранить, необходимо внести требуемые изменения или нажать кнопку Отменить (Undo) для отмены всех изменений, внесенных в запись.
Помимо проверки условий на значения и корректности ввода данных в Microsoft Access имеется возможность проверки орфографии. Чтобы проверить орфографию в режиме таблицы, необходимо:
- Выбрать записи, столбцы, поля или часть текста поля, в которых требуется проверить орфографию.
- Нажать на кнопку Орфография (Spelling) на панели инструментов.
Кроме проверки орфографии, в Microsoft Access возможно автоматическое исправление орфографических ошибок при вводе данных. Для этого служит режим Автозамены (AutoCorrect), который позволяет автоматически исправлять слова, при вводе которых часто допускаются ошибки, а также автоматически заменять сокращения полными значениями. То есть можно ввести аббревиатуру, а Автозамена сама подставит расшифрованное наименование в поле. Чтобы включить режим Автозамены (AutoCorrect) необходимо:
- Выбрать в меню Сервис (Tools) команду Параметры автозамены (AutoCorrect Options) (рис. 2.37).
- Установить флажок Заменять при вводе (Replace text as you type).
- В поле Заменять (Replace) ввести образец, который должен заменяться автоматически.
- В поле на (With) ввести текст, который подставляется вместо образца.
- Нажать кнопку Добавить (Add).
Рис. 2.37. Диалоговое окно Автозамена
Текст, введенный до установки флажка Заменять при вводе (Replace text as you type), исправлен не будет.
Контроль и проверка введенных данных
Microsoft Access может осуществлять проверку данных, вводимых в поле или запись таблицы. Чтобы проверить значение, вводимое в поле или запись, необходимо задать условие на значение. Кроме того, можно указать текст сообщения, которое должно появиться на экране, если введенные данные не соответствуют данному условию. В Microsoft Access существует два типа условий на значение:
- условия на значение поля;
- условия на значения записи.
Очень важно, что оба типа условий вводятся в систему на уровне таблицы. Это означает, что проверка вводимых данных на соответствие этим условиям будет выполняться независимо от способа ввода данных, будь то прямое редактирование записей в режиме Таблицы, или импорт (копирование) из другой таблицы, или редактирование записи в форме (на странице доступа к данным). Это позволяет надежно защищать данные от ошибок ввода.
Условие на значение поля позволяет обеспечить ввод корректных данных в поле записи. Проверка введенного значения осуществляется при переходе к другому полю или другой записи. Если введенное значение не соответствует заданному условию, на экран выводится сообщение, указанное пользователем, или стандартное сообщение, если пользователь не определил свое. Чтобы определить условие на значение поля, необходимо:
- Открыть таблицу в режиме Конструктора.
- В верхней части окна выбрать нужное поле.
- Открыть на панели свойств поля вкладку Общие (General) и выбрать свойство Условие на значение (Validation Rule), а затем ввести необходимое условие. Задать условие на значение можно при помощи Построителя выражений (рис. 2.35), нажав на кнопку Построителя справа. Выражения, используемые в условиях, возвращают значения Истина (True), и в этом случае данные корректны, или Ложь (False) — данные некорректны. Одним из самых простых выражений, которое может встретиться в условии, является > 0, т. е. в поле могут вводиться только положительные числа. Для ввода более сложных выражений нужно знать правила построения выражений в Access. Эти правила, а также правила пользования Построителем выражений, подробно изложены в разд. «Создание выражений с помощью Построителя выражений» в гл. 4.
- Выбрать свойство Сообщение об ошибке (Validation Text) и ввести сообщение, которое будет выводиться на экран, если данные не соответствуют заданному условию.
Если условие на значение накладывается на поле, которое уже содержит данные, то при сохранении таблицы Microsoft Access выдаст вопрос, нужно ли применять новое условие к существующим данным.
Чтобы проверить соответствие текущих данных в таблице условиям на значение, следует на заголовке таблицы в режиме конструктора нажать правую кнопку мыши, а затем выбрать команду Проверка условий (Test Validation Rules).
Условия на значение записи отличаются от условий на значение поля тем, что в условиях на значение записи допускаются ссылки на разные поля. Это позволяет использовать такие условия для сравнения значений, введенных в разные поля таблицы. Условия на значение записи проверяются при сохранении записи. Чтобы определить условие на значение записи, необходимо:
- Открыть таблицу в режиме Конструктора.
- Нажать на панели инструментов Конструктор таблиц (Table Design) кнопку Свойства (Properties) или, щелкнув правой кнопкой мыши по заголовку таблицы, выбрать из контекстного меню команду Свойства (Properties). Откроется диалоговое окно Свойства таблицы (Table Properties).
- Третья строка в этом окне — Условие на значение (Val >
Рис. 2.36. Ввод условия с помощью Построителя выражений
Выделите в списке значение ДатаИсполнения и нажмите на кнопку Вставить (Paste) или просто дважды щелкните мышью по этому элементу. В верхнем поле окна Построителя появится имя поля в квадратных скобках. Нажмите кнопку >. Аналогичным способом выберите из списка элемент ДатаРазмещения. В результате в верхнем поле появится выражение [ДатаРазмещения] > [ДатаИсполнения]. Нажмите кнопку ОК.
Если в выражениях используются ссылки на название полей таблицы, то они окружаются квадратными скобками.
Для таблицы можно указать только одно выражение, определяющее условия на значения. Если же необходимо наложить более одного условия, то в ячейке свойства Условие на значение (Validation Rule) выражения можно объединить при помощи оператора And.
Вне зависимости от того, заданы условия на значение поля или записи, при попытке выхода из текущего поля, после ввода данных Microsoft Access проверяет, являются ли введенные данные допустимыми для этого поля. Если значение не является допустимым, появляется предупреждающее сообщение. Для того чтобы выйти из поля, необходимо ввести правильное значение или отменить внесенные изменения.
Значение поля может оказаться недопустимым по следующим причинам.
- Значение несовместимо с типом данных поля (например, в числовых и текстовых полях или в поле даты). Если введено значение, не соответствующее типу данных поля, Microsoft Access пытается преобразовать его в правильный тип данных. Однако некоторые данные нельзя преобразовать в данные другого типа. Например, нельзя хранить текстовое значение в числовом поле.
- Данные нарушают условие на значение, заданное в свойстве Условие на значение (Validation Rule) этого поля.
- В поле необходимо ввести данные, а они не были введены.
Данные проверяются также при переходе на другую запись. Перед сохранением записи Microsoft Access проверяет все условия, заданные в свойстве Условие на значение (Validation Rule) записи. Кроме того, если таблица, в которую вносятся изменения, имеет ключ или уникальный индекс, то проверяется, что изменяемая запись не содержит в этом поле или полях значений, совпадающих со значениями в других записях таблицы. Если запись нельзя сохранить, необходимо внести требуемые изменения или нажать кнопку Отменить (Undo) для отмены всех изменений, внесенных в запись.
Помимо проверки условий на значения и корректности ввода данных в Microsoft Access имеется возможность проверки орфографии. Чтобы проверить орфографию в режиме таблицы, необходимо:
- Выбрать записи, столбцы, поля или часть текста поля, в которых требуется проверить орфографию.
- Нажать на кнопку Орфография (Spelling) на панели инструментов.
Кроме проверки орфографии, в Microsoft Access возможно автоматическое исправление орфографических ошибок при вводе данных. Для этого служит режим Автозамены (AutoCorrect), который позволяет автоматически исправлять слова, при вводе которых часто допускаются ошибки, а также автоматически заменять сокращения полными значениями. То есть можно ввести аббревиатуру, а Автозамена сама подставит расшифрованное наименование в поле. Чтобы включить режим Автозамены (AutoCorrect) необходимо:
- Выбрать в меню Сервис (Tools) команду Параметры автозамены (AutoCorrect Options) (рис. 2.37).
- Установить флажок Заменять при вводе (Replace text as you type).
- В поле Заменять (Replace) ввести образец, который должен заменяться автоматически.
- В поле на (With) ввести текст, который подставляется вместо образца.
- Нажать кнопку Добавить (Add).
Текст, введенный до установки флажка Заменять при вводе (Replace text as you type), исправлен не будет.
Access условие на значение поля
Основные свойства полей MS Access
Основные свойства полей MS Access зависят от выбранного типа данных. Если открыть таблицу в режиме конструктора, то весь набор свойств выбранного поля будет представлен в нижней части окна на двух вкладках: Общие (General) и Подстановка (Lookup). Приведем свойства полей, наиболее важные на первом этапе изучения баз данных.
- Размер поля (Field Size) позволяет для текстового и числового поля уточнить тип данных или размер, задает максимальный размер данных, сохраняемых в поле. Для поля с типом данных Текстовый (Text) задается размер от 1 до 255 знаков. Для поля с типом данных Числовой (Number) можно задать:
- Байт (Byte) для целых чисел от 0 до 255, длина поля 1 байт;
- Целое (Integer) для целых чисел от –32 768 до +32 767, занимает 2 байта;
- Длинное целое (Long Integer) для целых чисел от –2 147 483 648 до
+2 147 483 647, занимает 4 байта; - Одинарное с плавающей точкой (Single) для чисел от –3,4 1038 до
+3,4 1038 с точностью до 7 знаков, занимает 4 байта; - Двойное с плавающей точкой (Double) для чисел от –1,797 10308 до
+1,797 10308 с числом отображаемых десятичных знаков до 15, занимает
8 байтов; - Действительное (Decimal) для целых чисел от –1038 до +1038 (при работе с
проектами, которые хранятся в файлах типа adp) и от –1028 до 1028 (mdb и
accdb) с числом отображаемых десятичных знаков до 28, занимает 12 байтов; - Код репликации (Replication ID). Глобальный уникальный идентификатор (Globally unique identifier, GUID), занимает 16 байтов. Эти длинные генерируемые случайным образом значения обеспечивают малую вероятность их совпадения. Поля такого типа используются Access для создания системных уникальных идентификаторов реплик, наборов реплик, таблиц, записей и других объектов при репликации баз данных. Могут быть использованы в приложениях пользователя для идентификации строк таблицы, например для идентификации товаров.
Для поля с типом данных Счетчик (AutoNumber) можно задать:
- Длинное целое (Long Integer) — 4 байта;
- Код репликации (Replication ID) — 16 байтов.
Рекомендуется задавать минимально допустимый размер поля, который понадобится для сохраняемых значений, т. к. сохранение таких полей требует меньше памяти, и обработка данных меньшего размера выполняется быстрее.
- Формат поля (Format) является форматом отображения выбранного типа данных при выводе их на экран или печать в режиме таблицы, в форме или отчете. В Access определены встроенные стандартные форматы отображения для полей с такими типами данных как Числовой (Number), Дата/время (Date/Time), Логический (Yes/No) и Денежный (Currency). Ряд этих форматов совпадает с настройкой региональных форматов, определяемых в окне Язык и региональные стандарты в Панели правления Windows. Пользователь может создать собственный формат для всех типов данных, кроме Поле объекта OLE (OLE Object), с помощью символов форматирования.
- Число десятичных знаков (Decimal Places) задает для числового и денежного типов данных количество знаков после запятой. Можно задать число от 0 до 15. По умолчанию (значение Авто (Auto)) это число определяется установкой в свойстве Формат поля (Format). Следует иметь в виду, что установка этого свойства не действует, если свойство Формат поля (Format) не установлено или выбрано значение Основной (General Namber). Свойство Число десятичных знаков (Decimal Places) влияет только на количество десятичных знаков, отображаемых на экране, и не влияет на число сохраняемых десятичных знаков. Для изменения числа сохраняемых знаков нужно изменить свойство Размер поля (Field Size).
- Подпись (Caption) поля задает текст, который выводится в таблицах, формах, отчетах.
- Описание (Description) — краткий пользовательский комментарий к полю.
- Значение по умолчанию (Default Value) определяет текст или выражение, значение которого автоматически вводится в поле при создании новой записи. Например, если задана функция =Now(), то в поле введется текущая дата и время. При добавлении записи в таблицу можно оставить значение, введенное по умолчанию, или ввести другое. Свойство Значение по умолчанию (Default Value) используется только при создании новой записи. Максимальная длина значения свойства составляет 255 знаков. Свойство не определено для полей с типом данных Счетчик (AutoNumber) или Поле объекта OLE (OLE Object).
- Условие на значение (Val >ВНИМАНИЕ!
Элементы управления, созданные в формах или отчетах на основе поля таблицы, наследуют установленные для этого поля свойства. Благодаря этому не понадобится определять свойства индивидуально для каждого связанного с полем элемента управления.
В следующем уроке рассмотри процесс создания таблиц в MS Access.
Иллюстрированный самоучитель по Microsoft Access 2002
Контроль и проверка введенных данных
Microsoft Access может осуществлять проверку данных, вводимых в поле или запись таблицы. Чтобы проверить значение, вводимое в поле или запись, необходимо задать условие на значение. Кроме того, можно указать текст сообщения, которое должно появиться на экране, если введенные данные не соответствуют данному условию. В Microsoft Access существует два типа условий на значение:
- условия на значение поля;
- условия на значения записи.
Очень важно, что оба типа условий вводятся в систему на уровне таблицы. Это означает, что проверка вводимых данных на соответствие этим условиям будет выполняться независимо от способа ввода данных, будь то прямое редактирование записей в режиме Таблицы, или импорт (копирование) из другой таблицы, или редактирование записи в форме (на странице доступа к данным). Это позволяет надежно защищать данные от ошибок ввода.
Условие на значение поля позволяет обеспечить ввод корректных данных в поле записи. Проверка введенного значения осуществляется при переходе к другому полю или другой записи. Если введенное значение не соответствует заданному условию, на экран выводится сообщение, указанное пользователем, или стандартное сообщение, если пользователь не определил свое. Чтобы определить условие на значение поля, необходимо:
- Открыть таблицу в режиме Конструктора.
- В верхней части окна выбрать нужное поле.
- Открыть на панели свойств поля вкладку Общие (General) и выбрать свойство Условие на значение (Validation Rule), а затем ввести необходимое условие. Задать условие на значение можно при помощи Построителя выражений (рис. 2.35), нажав на кнопку Построителя справа. Выражения, используемые в условиях, возвращают значения Истина (True), и в этом случае данные корректны, или Ложь (False) – данные некорректны. Одним из самых простых выражений, которое может встретиться в условии, является > 0, т. е. в поле могут вводиться только положительные числа. Для ввода более сложных выражений нужно знать правила построения выражений в Access. Эти правила, а также правила пользования Построителем выражений, подробно изложены в разд. «Создание выражений с помощью Построителя выражений» гл. 4.
- Выбрать свойство Сообщение об ошибке (Validation Text) и ввести сообщение, которое будет выводиться на экран, если данные не соответствуют заданному условию.
Если условие на значение накладывается на поле, которое уже содержит данные, то при сохранении таблицы Microsoft Access выдаст вопрос, нужно ли применять новое условие к существующим данным.
Замечание
Чтобы проверить соответствие текущих данных в таблице условиям на значение, следует на заголовке таблицы в режиме конструктора нажать правую кнопку мыши, а затем выбрать команду Проверка условий (Test Validation Rules).
Рис. 2.35. Применение Построителя выражений при задании свойства Условие на значение
Условия на значение записи отличаются от условий на значение поля тем, что в условиях на значение записи допускаются ссылки на разные поля. Это позволяет использовать такие условия для сравнения значений, введенных в разные поля таблицы. Условия на значение записи проверяются при сохранении записи. Чтобы определить условие на значение записи, необходимо:
- Открыть таблицу в режиме Конструктора.
- Нажать на панели инструментов Конструктор таблиц (Table Design) кнопку Свойства (Properties) или, щелкнув правой кнопкой мыши по заголовку таблицы, выбрать из контекстного меню команду Свойства (Properties). Откроется диалоговое окно Свойства таблицы (Table Properties).
- Третья строка в этом окне – Условие на значение (Val >
Рис. 2.36. Ввод условия с помощью Построителя выражений
Выделите в списке значение ДатаИсполнения и нажмите на кнопку Вставить (Paste) или просто дважды щелкните мышью по этому элементу. В верхнем поле окна Построителя появится имя поля в квадратных скобках. Нажмите кнопку >. Аналогичным способом выберите из списка элемент ДатаРазмещения. В результате в верхнем поле появится выражение [ДатаРазмещения] > [ДатаИсполнения]. Нажмите кнопку ОК.
Замечание
Если в выражениях используются ссылки на название полей таблицы, то они окружаются квадратными скобками.