Архив рубрики «Oracle7 краткий справочник»

Отладка программ PL/SQL

13.04.2010

Oracle7 не поставляется с готовой и полной средой разработки. Поэтому для успешной разработки с применением PL/SQL нужно освоить некоторые приемы отладки.

Перед исполнением программы необходимо выполнить две операции:

Oбpaбoткa oшибoк в PL/SQL

09.04.2010

Нельзя создать приложение, которое будет безошибочно работать в любых ситуациях: возможны аппаратные сбои, невыявленные ошибки приложения и ошибки из-за некорректных действий пользователей приложения (клиентов). Если при этом программная ошибка произошла в блоке PL/SQL, вложенном в другой блок, а тот, в свою очередь, вложен в третий блок и т.д., то она может дойти до клиентского приложения. Чтобы устранить возможную отмену большого объема ранее выполненных операций и трафик из-за возвращаемых клиенту ошибок, чтобы посылать клиенту точные сообщения о причине ошибки и способе ее устранения (если она все же дошла до клиента), разработчики приложения должны предусматривать возможные программные ошибки и создавать процедуры, адекватно реагирующие на них.

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

Операторы управления выполнением программы PL/SQL

09.04.2010

Операторы условного перехода (IF …)

Существует три модификации оператора условного перехода:

IF-THEN                               |  IF-THEN-ELSIF
-------                               |  -------------
   IF условие THEN                    |     IF условие1 THEN
     последовательность команд;       |       1-я последовательность команд;
   END IF;                            |     ELSIF условие2 THEN
                                      |       2-я последовательность команд;
IF-THEN-ELSE                          |       ...
------------                          |     ELSIF условиеN THEN
   IF условие THEN                    |       N-я последовательность команд;
     1-я последовательность команд;   |   [ ELSE
   ELSE                               |       N+1-я последовательность команд; ]
     2-я последовательность команд;   |     END IF;
   END IF;                            |