Вы можете создавать правила проверки поля для контроля за типом инфорамации, вводимой пользователем в поля таблицы базы данных. Кроме того, вы можете указать свой собственное сообщение для отображения в случае ввода пользователем некорректного значения вместо того, чтобы выводить стандартное сообщение об ошибке.
![]() |
---|
Убедитесь, что правило проверки поля не вхожит в семантический конфликт с правилом проверки записи. Visual FoxPro не сравнивает выражения правил уровня запис и уровня поля на соответствие. |
Для создания правила проверки для поля
-
Откройте базу данных, содержащую таблицу.
-
Откройте таблицу в дизайнере таблиц (Table Designer).
-
В дизайнере таблиц выберите желаемое поле.
-
В боксе Rule в области Field validation впечайтайте желаемое выражение, которое будет использоваться для проверки вводимой в поле информации. Вы можете воспользоваться построителем выражения, щелкнув по кнопке выбора (...) для вывода его диалогового окна.
-
Когда вы закончите работу, щелкните по OK.
-
Для отображения вашего сообственного сообщения об ошибке, определите его, впечатав в боксе Message либо в виде сообщения, либо выражения, которое вы желаете отобразить при вводе в поле некорректного значения. Вы можете воспользоваться построителем выражения, щелкнув по кнопке выбора (...) для вывода его диалогового окна.
Замечание
Убедитесь в том, что ваш текст сообщения заключен в кавычки ("").
-
Когда вы закончите работу, щелкните по OK.
Для получения более подробной информации смотрите Закладка Fields дизайнера таблиц.
Для создания правила проверки для поля программно
-
При создании таблицйы с помощью команды SQL CREATE TABLE включите в нее опцию CHECK. Для вывода вашего сообщения об ошибке опишите ее в опции ERROR упомянутой команды.
- или -
-
Для редактирования существующей таблицы, откройте ее с помощью команды USE и затем используйте команду SQL ALTER TABLE с опциями CHECK или SET CHECK. Для ввода текста собственного сообщения об ошибке, включите в упомянутую команду опцию ERROR.
- или -
-
Используйте функцию DBSETPROP( ) для установки свойств поля RuleExpression и RuleText.
Для получения более подробной информации смотрите описания Команда CREATE TABLE - SQL, Команда ALTER TABLE - SQL, and Функция DBSETPROP( ).
Например, предположим, что вы желаете, чтобы число предметов в записи таблицы предметов заказа было равно или больше, чем 1. Приведенный ниже код добавляет с помощью опции SET CHECK правило проверки для поля, которое требует, чтобы числа, вводимые в поле Quantity были равны или больше 1. Опция ERROR определяет пользовательское сообщение об ошибке:
![]() | |
---|---|
ALTER TABLE OrdItems ALTER COLUMN Quantity SET CHECK Quantity >= 1 ; ERROR "Quantity must be a value greater than or equal to 1." |
Когда пользователь попытается ввести значение, меньшее 1, Visual FoxPro отобразит определенное в коде сообщение и удалит значение.