Условие на значение access 2020
Условие на значение access 2020
Контроль и проверка введенных данных
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), исправлен не будет.
Ограничение ввода данных с помощью правил проверки
Правила проверки позволяют выполнять проверку данных по мере их ввода в базы данных Access для настольных систем. Для правильного форматирования правил вы можете использовать построитель выражений. Правила проверки можно задавать в конструкторе таблиц или в режиме таблицы. В Access существуют правила проверки трех типов.
1. Правило проверки поля . Это правило можно использовать для определения условий, которым должны соответствовать все допустимые значения полей. Не указывайте текущее поле в качестве части правила, если вы не используете это поле в функции. Для ограничения типов символов, которые можно вводить в поле, удобно использовать маску ввода. Например, для полей даты можно задать правило проверки, запрещающее указывать прошедшие даты.
Запрет прошедших дат: >=Date()
Общепринятый формат эл. почты: Is Null OR ((Like «*?@?*.?*») AND (Not Like «*[ ,;]*»))
Число не больше пяти: =0
Ограничения числа знаков в строке: Len([StringFieldName]) =[Дата начала]
Ввод даты назначения, которая должна быть не позднее 30 дней с даты заказа: [Дата назначения]
В этой статье
Общие сведения
В этой статье описывается, как применять правила и текст проверки к полям таблицы и элементам управления формы. Правила проверки позволяют ограничить ввод данных в поля таблицы и элементы управления формы (например, текстовые поля). Текст проверки отображается для подсказки, если пользователь вводит недопустимые данные.
После ввода данных Access проверяет их на соответствие правилу проверки. Если данные недопустимы, отобразится сообщение.
В Access есть несколько способов ограничения ввода данных.
Типы данных .Каждое поле таблицы имеет тип данных, который ограничивает возможности ввода для пользователей. Например, в поле с типом данных «Дата/время» можно ввести только дату и время, в поле с типом данных «Денежный» — только денежные данные и т. д.
Свойства поля .Некоторые свойства поля ограничивают ввод данных. Например, свойство Размер поля ограничивает количество вводимых данных.
Можно также использовать свойство Правило проверки, чтобы ограничить ввод строго определенными значениями, и свойство Сообщение об ошибке, чтобы предупреждать пользователей об ошибках. Например, правило >100 And =[ДатаНачала] требует, чтобы вводимая дата окончания совпадала с датой начала либо следовала за ней. Текст типа «Введите значения в диапазоне от 100 до 1000» или «Введите дату окончания, которая не предшествует дате начала», указанный в свойстве Сообщение об ошибке, сообщит пользователям о допущенной ошибке и о том, как ее исправить.
Маски ввода .Маски ввода можно использовать для проверки данных, если требуется, чтобы пользователи вводили значения в определенном формате. Например, с помощью маски ввода можно разрешить вводить даты только в европейском формате (например, 2007.04.14).
Эти методы проверки данных можно использовать как вместе, так и в отдельности. Типы данных являются обязательными и предоставляют наиболее распространенные типы проверки данных.
Дополнительные сведения о типах данных, размерах полей и масках ввода см. в статье Введение в использование типов данных и свойств полей.
Типы правил проверки
Можно создать два основных типа правил проверки.
Правило проверки поля .Это правило используется для проверки введенного значения при переходе к другому полю. Предположим, имеется поле даты, и для свойства Правило проверки задано значение >=#01.01.2010#. Это правило требует, чтобы пользователи вводили дату не ранее 1 января 2010 года. Если указать дату ранее 2010 года, вы не сможете перейти к другому полю в Access, пока не исправите ошибку.
Правило проверки записи .Это правило используется для управления сохранением записи (строки в таблице). В отличие от правила проверки поля, для правила проверки записи используются ссылки на другие поля той же таблицы. Правило проверки записи создается, если требуется сравнить значения в разных полях. Предположим, вам требуется доставить товар в течение 30 дней, и в случае если товар не будет доставлен в этот срок, необходимо возместить клиенту убытки. Можно задать правило проверки [Срок]
Применение правил проверки
Можно задавать правила проверки для полей таблиц и элементов управления в формах. Заданные правила проверки для таблиц применяются также при импорте данных. Чтобы добавить правила проверки в таблицу, откройте нужную таблицу и используйте команды на вкладке Поля ленты. Чтобы добавить правила проверки в форму, откройте форму в режиме макета и добавьте эти правила в свойства отдельных элементов управления.
Из инструкций, приведенных в разделе Добавление правила проверки в таблицу, вы узнаете, как добавлять правила проверки в поля таблицы. А в разделе Добавление правила проверки для элемента управления формы, который вы найдете ниже в этой статье, описано, как добавлять правила в свойства отдельных элементов управления.
Данные, которые можно ввести в правило проверки
Правила проверки могут содержать выражения — функции, возвращающие единственное значение. Выражение можно использовать для выполнения вычислений, обработки знаков или проверки данных. Выражение правила проверки выполняет проверку данных. Например, может проверять наличие одного значения из ряда, например «Токио» OR «Москва» OR «Париж» OR «Хельсинки» . Выражения также могут выполнять математические операции. Например, выражение
Добавление правила проверки в таблицу
В таблицу можно добавлять правила проверки поля и проверки записи. Правило проверки поля проверяет данные, введенные в поле, и применяется при переходе к следующему полю. Правило проверки записи проверяет данные, введенные в одно или несколько полей, и применяется при переходе к следующей записи. Обычно правило проверки записи сравнивает значения нескольких полей.
Примечания: Правила проверки не поддерживаются в таких типах полей:
Построение условий в запросах на выборку в СУБД MS Access
В большинстве современных СУБД имеется свой вариант QBE, незначительно отличающийся от первого описания QBE, предложенного в конце 70-х годов ХХ в. Рассмотрим некоторые возможности QBE СУБД MS Access.
Используем для примера таблицу БД, которая относится к торговле (рис. 3.10). Имя таблицы TYPE (типы товаров). Она имеет столбцы: товар – названия товара; цвет – его цвет; стоимость – стоимость товара.
Выборка данных может осуществляться по следующим вариантам:
1. Простая выборка, например: «Вывести товары зеленого цвета из таблицы TYPE».
2. Простая выборка с упорядочиванием.
3. Выборка с квалификаторами (условиями). Выбор записей из исходной таблицы может быть основан на: а) точном совпадении; б) частичном совпадении; в) сравнении.
Запросы позволяют получать результирующие таблицы, поля которых удовлетворяют определённым условиям (критериям). Эти условия задают в бланке запроса в строке Условия отбора. Условиями отбора являются логические выражения, состоящие из операторов и операндов. Используются операторы сравнения =, , <> (не равно), Between, In, Like и и логические операторы And, Or, Not. Допускается применять шаблоны с подстановочными символами.
Рис. 3.10. Пример таблицы БД
Если точное значение не известно или необходимо вводить значение не полностью, то удобно использовать шаблон (образец) с подстановочными символами (знаками). Примеры подстановочных символов:
* — соответствует любому количеству любых символов. Пример: 77* — для нахождения всех телефонов с номерами, начинающимися на 77.
? — соответствует одному текстовому символу. Пример: 77-4?-0? — для нахождения всех телефонов с номерами, содержащими четыре указанные цифры.
Шаблоны используются совместно с оператором Like. Этот оператор позволяет создавать шаблоны, использующие подстановочные символы при поиске в текстовых полях. Например, фамилия сотрудника известна неточно. Это может быть Петров, Петровский, Пеотровский и т.п. Тогда следует использовать для выборки в строке Условие запись Like «Пе*».
Известно, что имя состоит из 4-х букв. Тогда подойдет запись Like «. «.
Оператор Between задаёт интервал значений. Например, Between 1 And 5
(указанные края интервалов в выборку включаются).
Оператор In выполняет проверку на равенство любому значению из списка, заданному в круглых скобках. Например, In(«ручка»;»духи»).
Логические операции И, ИЛИ могут быть заданы явно в выражении условия с помощью операторов AND и OR. Например, «духи» OR «карандаш».
В качестве операндов в запросах могут использоваться литералы, константы, идентификаторы (ссылки).
Литералами являются конкретные значения, воспринимаемые системой так, как они записаны. Литералом может быть число, дата, строка. Например, 1146, #31.01.02 #, «Липецк».
Константами являются постоянные значения, которые определены в Access. Например, True, False, Null, Да, Нет.
Идентификаторосуществляет ссылку на поле, элемент управления или свойство. Идентификаторами могут быть имена полей, таблиц, форм, и так далее. Они заключаются в квадратные скобки. Ссылка на конкретное значение должна указывать на его местоположение в иерархии объектов в БД. Ссылка на поле в таблице имеет вид [Имя таблицы]![Имя Поля]. Например, [Сотрудники]![Фамилия].
Условие отбора целесообразно формировать с помощью построителя выражений. Для этого следует открыть окно Построитель выражений,щёлкнув кнопку Построитьна панели инструментов или выбрав команду Построитьв контекстном меню. Предварительно необходимо установить курсор мыши в ячейке ввода условия.
Условие точного несовпадения значений одного из полей. Если в таблице надо найти записи, значения полей которых не удовлетворяют определенному условию, то используется оператор Not. Оператор Not или <> вводится перед сравниваемым значением. Пример. Отобрать все записи таблицы TYPE, за исключением записей «карандаш» в поле Товар. Для этого в бланке запроса в столбце поля Товар в строке Условие отбора вводится Not » карандаш».
Условие неточного совпадения. Выбор записей по условию неточного
совпадения значений можно осуществить, используя оператор Like. Этот оператор позволяет найти требуемые записи, зная лишь приблизительное написание текстовой величины. В операторе Like можно использовать шаблоны с подстановочными символами, что расширяет возможности поиска записей при неточном задании условий. Пример условия отбора: Like “[д-к]*”. Здесь — (минус) соответствует любому символу из диапазона. Диапазон необходимо указывать по возрастанию (д-к, но не к-д).
Выбор записей по диапазону значений. Для задания диапазона значений в окне конструктора запросов используются операторы >, 100.00 AND
Дата добавления: 2015-08-20 ; просмотров: 8486 ; ЗАКАЗАТЬ НАПИСАНИЕ РАБОТЫ
Задать свойства поля (необязательно)
Каждое поле имеет набор характеристик, называемых свойствами, которые задают условия хранения и отображения данных. Этот набор определяется типом данных поля. После указания типа данных Access выводит список свойств в нижней части окна конструктора и дает возможность задать нужные значения свойств поля. Настройка свойств поля позволяет, в частности, проконтролировать правильность вводимых данных, а нередко упростить сам процесс ввода.
Ниже приводится перечень и краткое описание свойств поля. Для получения подробной справки нужно щелкнуть по интересующему свойству и нажать F1.
Размер поля. Задает максимальный размер данных, которые будут храниться в поле. Текстовое поле может иметь размер от 1 до 255 символов (по умолчанию — 50 символов). Размер числового поля зависит от выбранного типа числовых данных. Access допускает следующие диапазоны значений для числовых данных.
• Байт — целые числа в пределах от 0 до 255.
• Целое (2 байта) — целые числа в пределах от -32768 до 32767.
• Длинное целое (4 байта) — целые числа в пределах от -2 147 483 648 до 2 147 483 647.
• С плавающей точкой (4 байта) — числа в пределах от -3,4*1038 до 3,4*1038 с точностью до 6 разрядов.
• С плавающей точкой (8 байт) — числа в пределах от -1,8*10308 до 1,8*10308 с точностью до 10 разрядов.
Формат поля. Это свойство поля задает формат представления его значений при выводе на экран или печать. Формат, установленный для поля при создании таблицы, используется по умолчанию в содержащей это поле форме или запросе.
Для числовых, денежных, логических полей, а также поля типа дата/время Access предоставляет список стандартных форматов. Этот список вызывается щелчком мыши (см. рис. 2.2). Пользователь может создать свой собственный формат поля (см. справку Access).
Рис. 2.2. Список стандартных числовых форматов
Дробная часть. Задает количество знаков в числах справа от запятой.
Таблица 2.1. Символы, используемые при задании маски ввода
Маска ввода. Устанавливает символы форматирования для их автоматического заполнения во время ввода данных, например, добавления скобок и дефисов в полях номеров телефонов. Маску ввода можно использовать для преобразования вводимых символов к нужному регистру. В нее можно также включить строку символов, которая будет сохраняться в этом поле или использоваться для форматирования при выводе на экран.
Перечень символов, используемых при задании маски ввода, приведен в таблице 2.1. Символы 0, А, L и & предполагают обязательный ввод в поле.
Описание маски ввода состоит из трех разделов, разделенных точкой с запятой.
Первый раздел — это собственно маска ввода, состоящая из символов маски и постоянных символов.
Второй раздел указывает, следует ли сохранять постоянные текстовые символы маски в поле. Если постоянные символы нужно включить в значение поля, то в этом разделе следует указать ; в противном случае в этом разделе указывается 1. Если этот раздел отсутствует, то сохраняются только введенные символы.
Третий раздел задает символ — указатель позиций, заполняемых при вводе. Допускается использование любого символа. Если этот раздел отсутствует, то для представления пустых символов используется символ подчеркивания ( _ ).
Ниже приводятся описания некоторых масок ввода и примеры значений, которые могут быть в них введены (см. табл. 2.2).
Для создания маски ввода можно воспользоваться услугами мастера, который вызывается при нажатии кнопки Построить.
Таблица 2.2. Примеры масок ввода
Подпись. Задает альтернативное имя, которое будет появляться в качестве заголовка поля при просмотре таблицы или созданных на ее основе запросах, формах или отчетах. Например, если установить значение № зачетки для подписи поля Код студентатаблицы Студенты, то при переходе в режим таблицы это название будет выведено в качестве заголовка данного поля.
Значение по умолчанию. Задает значение, автоматически вводящееся в поле при создании новой записи. Для числового поля значение по умолчанию равно 0, а для текстового или Memo поля — значение Null (данные в поле неизвестны).
Условие на значение. Задает логическое выражение, определяющее условие для ввода или редактирования данных. Выражение принимает значение «Истина» (True), если значение в поле удовлетворяет заданному условию, и «Ложь» (False) — в противном случае. Access не позволит ввести в поле значение, не удовлетворяющее условию, и выдаст сообщение об ошибке.
Условие на значение задается выражением, состоящим из операторов сравнения (>, >=,
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰).
Папиллярные узоры пальцев рук — маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни.
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций.
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого.
Построитель выражений в Access 2010
Технический уровень : Базовый
Практический пример использования Построителя выражений в Access 2010
Построитель выражений
Построитель выражений предназначен для создания выражений. Запустить Построитель выражений можно практически из любого места в приложении Microsoft Access, где требуется создание выражений. В таблицах и полях, в запросах, в свойствах форм и отчётов, в элементах управления, запросах и макросах — во всех этих элементах используются выражения для вычислений с данными и управления поведением приложения. Построитель выражений предоставляет простой доступ к именам полей и элементам управления в базе данных, а также ко многим встроенным функциям, доступным при написании выражений. С помощью Построителя выражений можно как создавать выражения с нуля, так и выбирать готовые выражения для вывода, например, номеров страниц, текущей даты или даты и времени.
В Access 2010 Построитель выражений претерпел существенные изменения. Усовершенствованный Построитель выражений позволяет создавать выражения быстрее и с меньшим количеством ошибок:
Построитель выражений получил ряд новых возможностей и упрощенный пользовательский интерфейс. Пользователям больше не нужно запоминать синтаксис выражений и доступные функции или свойства. Новый Построитель выражений поддерживает технологию IntelliSense, предоставляющую все необходимые сведения по мере ввода выражения.
Кроме того, новый пользовательский интерфейс поддерживает прогрессивное раскрытие, т. е. отображение только функций и свойств, существующих в определенном контексте. В предыдущих версиях Microsoft Access для всех контекстов, в которых использовалось выражение, применялся единый общий вычислитель выражений. Это означает, что независимо от того, где используется выражение, доступные пользователю функции и операторы будут в большинстве случаев одни и те же. В Access 2010 Построитель выражений является контекстно-зависимым. Также обратите внимание, что кнопки операторов исчезли. Операторы теперь доступны на панели «Элементы выражений». Все эти изменения позволяют не загромождать интерфейс, предоставить пользователям более осмысленный выбор и увеличить область редактирования.
В конструкторе макросов и других местах Access 2010, где необходимо создавать выражения, по щелчку значка:
открывается Построитель выражений.
Рассмотрим использование Построителя выражений для оператора ЕСЛИ с условием от 50 до 100 Примера, для чего вводим букву Т и из раскрывшегося списка выбираем Товары:
ставим точку и вновь из раскрывшегося списка выбираем Количество:
Для ввода нашего условия «от 50 до 100», выбираем и вставляем оператор сравнения Between (между) двойным кликом левой лапки мышки, в результате получим:
в поля «Выражение» вводим значения нашего условия — 50 и 100 соответственно:
Нажав кнопку «ОК«, в строке «ЕСЛИ» мы увидим введённую нами формулу с условием если количество Товара между 50 и 100, то сработает ветвь оператора ЕСЛИ:
Дополнительные сведения о выражениях и о работе с Построителем выражений можно найти в справке к Access 2010.