DeepEdit!

Программирование баз данных на Oracle, техническая документация, литература, статьи и публикации

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Значения NULL

Отсутствие значения отображается в Oracle при помощи ключевого слова NULL. В предыдущем разделе было показано1, что переменные почти всех типов данных PL/SQL могут находиться в неопределенном состоянии (исключением являются ассоциативные массивы, экземпляры которых ни при каких условиях не могут быть неопределенными). Обработка значений NULL любого типа данных может вызывать определенные сложности у программиста, при этом строковые значения заслуживают особого упоминания.
В Oracle SQL и PL/SQL строковое значение NULL обычно неотличимо от литерала, состоящего из нулевого количества символов ('' - две последовательные одинарные кавычки, между которыми нет никаких символов). Например, следующее выражение будет вычислено как TRUE и в SQL, и в PL/SQL:

Значение NULL ведет себя так, как если бы типом данных по умолчанию для него являлся VARCHAR2, но сервер Oracle будет пытаться выполнить его неявное преобразование к типу данных, соответствующему выполняемой операции. В некоторых ситуациях от вас может потребоваться явное приведение типов (с использованием такой синтаксической конструкции, как TO_NUMBER(NULL) или CAST(NULL AS NUMBER)).
Литералы
Литерал - это значение, которое не представлено идентификатором, то есть просто значение, которое существует само по себе.
Строковые литералы
Так что следующее условие будет вычислено как FALSE:
К сожалению, это ошибка автора. В предыдущем разделе ничего об этом не говорилось.
Строковый литерал - это текст, заключенный в одинарные кавычки,

В отличие от идентификаторов, строковые литералы в PL/SQL чувствительны к регистру, то есть следующие два литерала воспринимаются как различные:
 


Второе образование за 6 месяцев: Курсы бухгалтерского учета отзывы.







jAntivirus