Правила верификации или условия на значения

 

Маски ввода — замечательное средство, но они применяются лишь с информацией нескольких определенных типов, обычно с тестом фиксированной длины, имеющим единственный неизменный шаблон. Для создания действительно "пуленепробиваемой" таблицы следует применять более сложные ограничения, такие как гарантия попадания числа в определенный диапазон, проверка еще не наступивших дат или первой буквы текста. Правила верификации или условия на значения могут помочь вам сформировать все эти ограничения, используя всю мощь языка SQL (Structured Query Language, язык структурированных запросов).

 

 

Примечание

Более полное введение в язык SQL начнется с главы 6. К счастью, для написания правила верификации вам понадобится лишь частичка SQL. Ключевая составляющая правила — выражение проверки правильности данных (validation expression) вы увидите несколько практических примеров таких выражений, которые можно сразу поместить в ваши таблицы.

 

 

Суть правила верификации проста. Вы задаете ограничение, сообщающее программе Access, какие значения разрешены в поле, а какие нельзя считать правильными. Когда кто-нибудь добавляет новую запись или редактирует имеющуюся, Access проверяет, удовлетворяют ли данные вашим условиям на значения. Если нет, программа выводит сообщение об ошибке и заставляет вас откорректировать ошибочные данные и попробовать еще раз.

 

Применение условия на значение поля

У каждого поля может быть одно условие на значение или правило верификации. Далее приведены действия, необходимые для задания такого правила. Начнем с простого условия, запрещающего вводить в числовое поле 0 или любое отрицательное число (а в следующих разделах вы отшлифуете навыки создания правил верификации настолько, что сможете защитить и данные других типов).

 

Для вставки вашего условия на значение выполните следующие действия.

1.   В Конструкторе выберите поле, к которому хотите применить условие.

Данные всех типов, кроме Поле MEMO, Счетчик и Объект OLE, поддерживают условие на значение. В данном примере правило верификации обрабатывает числовые данные (Числового или Денежного типа).

2.  В свойстве поля Условие на значение (Validation Rule) введите проверочное выражение
(рис. 4.14).

Выражение представляет собой фрагмент на языке SQL, выполняющий проверку введенных вами данных. Программа Access проверяет данные на значение, когда вы ввели порцию данных и собираетесь переходить к другому полю или другой записи. Например, условие >0 — это правило верификации, требующее ввода в иоле только положительных значений. В следующих разделах вы познакомитесь с другими условиями на значение.

Рис. 4.14. В данном примере свойство Условие на значение препятствует вводу недопустимых цен, а свойство Сообщение об ошибке содержит текст сообщения

3.  Введите текст сообщения в свойство поля Сообщение об ошибке (Validation Text).

Если вы введете значение, не прошедшее проверку, программа Access отвергнет его и выведет этот текст сообщения об ошибке в диалоговом окне. Если вы не предложите никакого текста, программа отобразит условие на значение для данного поля (которое вы ввели в пункте 2), что вызывает у простых смертных нечто большее, чем легкое недоумение.

4.  Щелкните правой кнопкой мыши заголовок вкладки и выберите Режим таблицы.

Если в вашей таблице есть записи, программа Access дает вам возможность проверить их на соответствие заданному правилу верификации. Вам решать — выполнить такую проверку или полностью пропустить ее.

 

После перехода в Режим таблицы вы готовы к тестированию вашего условия на значение (рис. 4.15).

 

Рис. 4.15. В данном примере условие на значение >0 препятствует вводу отрицательных чисел в поле Price. Когда вы вводите отрицательное число, Access выводит окно сообщения с текстом об ошибке, который вы задали ("You didn’t get this for free, did you?" — "Вы ведь не получили ее даром, не так ли?"). После щелчка мышью по кнопке ОК вы возвращаетесь в поле, которое остается в режиме редактирования. У вас есть возможность изменить значение на положительное или нажать клавишу <Esc> для отказа от вставки или редактирования записи

 

 

Примечание

Наличие у вашей таблицы правил верификации или условий на значения вовсе не означает, что данные в этой таблице следуют заданным правилам. Отклонения могут возникнуть, если вы ввели данные прежде, чем правила верификации начали действовать. (Вы уже знаете об аналогичной потенциальной проблеме, связанной с обязательными полями, описанной в разд. "Запрет незаполненных полей" ранее в этой главе)

 

 

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100