Автономная транзакция завершается оператором или ROLLBACK.
Она не заканчивается с завершением содержащего ее блока. Если автономный блок заканчивается без окончания транзакции, то возникает ошибка ORA-6519 и автономная транзакция откатывается.
Итоги
В этой главе рассматривались язык SQL в целом, а также операторы DML и операторы управления транзакциями, допустимые, в частности, в PL/SQL. Кроме того, говорилось о привилегиях, о ролях и о том, как транзакции обеспечивают согласованность данных. В следующей главе обсуждаются встроенные функции SQL, а в главе 6 — курсоры, применяемые в многострочных запросах.
Базовые команды SQL, рассмотренные в главе 4, дополняются множеством встроенных функций. В этой главе обсуждаются различные виды функций и способы их применения.
Введение
В SQL имеется ряд встроенных функций, которые могут быть вызваны из SQL- оператора. К примеру, ниже приведен оператор SELECT, в котором функция UPPER (верхний регистр) используется для получения имен студентов, представленных прописными буквами, а не в том виде, в каком они хранятся:
можно разделить на категории в соответствии с типом используемых аргументов. Например, для функции UPPER предполагается применение символьного аргумента. Если задать некорректный аргумент, то до вызова функции он будет автоматически преобразован PL/SQL в соответствии с правилами преобразования типов данных (см. главу 3). Кроме того, по числу обрабатываемых строк SQL-функции можно разделить на групповые и однострочные. Групповые функции обрабатывают несколько строк данных и возвращают один результат. Их разрешается применять только в списках выбора и в конструкциях HAVING запросов. В процедурных функциях PL/SQL их использование запрещено. Примером групповой функции является функция COUNT (число строк). Однострочные функции, например UPPER, обрабатывают одно значение и возвращают другое. Их можно использовать в SQL-операторах, где разрешается применять выражения, а также в процедурных операторах PL/SQL.
Встроенные функции подробно рассматриваются ниже. В каждом разделе функции приводятся в порядке английского алфавита. Некоторые
функции имеют необязательные аргументы. Они указываются в квадратных скобках ([]) в описании синтаксиса функции.
Внимание
В последующих разделах упоминаются версии Oracle7, Oracle8, Огас1е8 и Oracle9i. Во всех случаях функция доступна в последней поддерживаемой реализации основной версии (т.е. 7.3 для Огас1е7и 8.1.7 для Oracle8). Функция может также быть доступна в более ранних реализациях.
< Предыдущая | Следующая > |
---|