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

NoteЗамечание

Убедитесь в том, что правила проверки уровня поля не конфликтуют с семантикой правил проверки уровня записи. Visual FoxPro не сравнивает выражения правил уровня поля и правил уровня записи на соответствие.

Для создания правила проверки уровня записи

  1. Откройте базу данных, содержащую желаемую таблицу.

  2. Откройте таблицу в Table Designer (Конструкторе таблицы).

  3. В Table Designer (Конструкторе таблицы) щелкните по закладке Table (Таблица).

  4. В боксе Rule (Правило), в области Record validation (Проверка записи) впечатайте действительное выражение, которое вы желаете использовать. Для сборки выражения щелкните по командной кнопке (...).

  5. После завершения ввода правила щелкните по OK (Сделано).

  6. Для отображения вашего собственного сообщения об ошибке впечатайте в боксе Message (Сообщение) текст сообщения об ошибке или выражение, которое вы желаете отобразить пользователю при вводе некорректных значений. Для сборки выражения щелкните по командной кнопке (...).

    NoteЗамечание

    Убедитесь, что вы заключили текст сообщения в кавычки ("").

  7. После завершения ввода правила щелкните по OK (Сделано).

Для получения более подробной информации смотрите Закладка Table (Таблица) Table Designer (Конструктора таблицы).

Для программного создания правила проверки уровня записи

  • При создании таблицы с помощью команды SQL CREATE TABLE включите в состав команды опцию CHECK. Для создания собственного сообщения об ошибке включите в команду опцию ERROR с соответствующим текстом.

    - или -

  • Для редактирования существующей таблицы откройте ее с помощью команды USE и, затем, используйте команду SQL ALTER TABLE с опциями CHECK или SET CHECK. Для создания собственного сообщения об ошибке включите в команду опцию ERROR с соответствующим текстом.

Для получения более подробной информации смотрите Команда CREATE TABLE - SQL и Команда ALTER TABLE - SQL.

NoteЗамечание

Вы не можете использовать функцию DBSETPROP() для установки правил проверки и текста сообщений об ошибке; однако, вы можете извлечь их для просмотра с помощью функции DBGETPROP() и свойств таблицы RuleExpression RuleText. Для получения более подробной информации смотрите Функция DBSETPROP().

Например, предположим, что вы желаете убедиться, что возвраст нового работника, заносимого в таблицу, равен 18 годам или более. Приведенный ниже программный код добавляет правило проверки уровня записи, требующее, чтобы данные в поле Hire_Date были равны или больше суммы даты рождения и 18 лет, с помощью опции SET CHECK. Опция ERROR указывает сообщение об ошибке:

 CopyCode imageCopy Code
ALTER TABLE Employee SET CHECK Hire_Date >= birth_date + (18 * 365.25) ;
   ERROR "Возраст работника должен быть не менее 18 лет."

Если пользователь введет запись работника с несоответствующей правилу датой, Visual FoxPro отобразит указанное сообщение об ошибке и не обновит запись.

Смотрите также