Введение в СУБД "Oracle". Космачев В.М - 53 стр.

UptoLike

ГУАП МЦИТ
Введение в «ORACLE»
Под ред. проф. В.М.Космачёва
53
Пример 2.3.13
DECLARE Emp NUMBER(4);
BEGIN
SELECT emp INTO emp FROM em WHERE ename =’Smith';
END;
Такое применение переменной EMP разрешено, так как таблица ЕМ определена в другом блоке.
Первый оператор BEGIN отмечает начало тела основной программы. В тело программы могут быть вложены другие
блоки, ограниченные операторными скобками BEGIN и END. В блоке EXCEPTION определяются фрагменты
программного кода для обработки исключительных ситуаций в программе. Последний оператор END указывает конец
тела программы.
В любые части программы на PL/SQL можно включать комментарии. Текст, который начинается с символов "—" и
продолжается до конца текущей строки, рассматривается как комментарий. Строка, начинающаяся с ключевого слова
RЕМ, также рассматривается как комментарий.
В блоке программы PL/SQL, ограниченном операторами DECLARE и BEGIN, описываются переменные и
константы. Любая переменная или константа должна иметь один из допустимых в Oracle типов. Константа
идентифицируется ключевым словом CONSTANT и отличается от переменной тем, что попытка изменить ее
значение приводит к сообщению об ошибке. Присваивание значений переменным осуществляется оператором ": =".
Рассмотрим пример простейшей программы, в которой определяются переменные и выполняются действия по
вычислению ЕХР(2)и ЕХР(З). Команды установки переменных окружения SERVEROUTPUT и ECHO определяют
режим вывода на терминал пользователя. Системная процедура DBMS_OUTPUT.PUT_LINE обеспечивает вывод
данных на терминал пользователя, а функция ЕХР вычисляет экспоненту. Символ "/" указывает на завершение текста
процедуры и является командой к интерпретации и выполнению процедуры
Пример 2.3.14
SQL>set serveroutput on;
SQL>set echo on;
SQL>DECLARE
2 Headerl CONSTANT VARCHAR2(20):=’кспонента двух равна’;
3 Header2 CONSTANT VARCHAR2(20):=’Экспонента трех равна’;
4 Arg NUMBER:=2; здесь задается начальное значение аргумента
6 BEGIN
7 DBMS_OUTPUT.PUT_LINE(Headerl || Exp(Arg));
8 Arg:=Arg+l;
9 DBMS_OUTPUT.PUT_LINE(Header2 || Exp(Arg));
10 END;
11 /
2.3.4. Управление выполнением программы
Оператор ветвления IF
В PL/SQL предусмотрено несколько операторов, с помощью которых можно управлять выполнением программы.
Oracle использует следующий синтаксис конструкции ветвления в PL/SQL:
IF условие1 THEN
операторы1; ветвь 1
[ELSIF условиеK THEN
операторыK;] ветвьK
[ELSE
операторыN;] ветвь альтернативы