База Знаний: Base. Проверка на NULL-значения в форме
В реляционных базах данных (RDBMS) поддерживается контроль целостности данных на уровне описания структуры таблиц (DML). В том числе, можно указать, какие поля не должны содержать неопределённые (NULL) значения[1]. Проверка этих условий осуществляется средствами самой RDBMS и не зависит от способа добавления/изменения данных (через форму, командную строку или файл сценария).
Однако, в ряде случаев, лучше проводить дополнительную проверку на стороне клиента, до отправки запроса к SQL-серверу.[2] [3]
В формах Apache OpenOffice у многих элементов управления (текстовые поля, поля форматированного ввода и других) в Свойствах элемента на закладке Данные есть пара свойств:
- "пустая строка - NULL" да/нет,
- "требуется ввод данных" да/нет.
Если первое свойство выставлено в значение "да", то активируется второе.
Между DML описанием таблицы и настройками элементов формы Apache OpenOffice существует следующая связь[4]:
DML,
NOT NULL |
Форма,
"требуется ввод данных" |
Результат попытки сохранить NULL значение в БД |
---|---|---|
не указано | любое значение | Значение сохраняется.
Настройки формы игнорируются. |
указано | да | Значение не сохраняется. Выводится локализованное предупреждение Apache OpenOffice.
Т.е. срабатывает ограничение на стороне клиента. |
указано | нет | Значение не сохраняется. Выводится предупреждение SQL-движка.
Т.е. срабатывает ограничение на стороне сервера. |
Template:RU/documentation/signyear
Template:KbBaseBottom
Cite error: <ref>
tags exist, but no <references/>
tag was found