|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Лабораторная работа 19.3 Создание пакетовСоздание пакетов в Oracle PL/SQL, команда CREATE PACKAGE, создание в пакете процедур и функций, вызов процедур и функций из пакета Задание:Создайте в схеме hr пакет с именем hr.pkgSalary, который бы включал в себя функцию fSalary и процедуру pSalary. Функция и хранимая процедура должна выполнять так же действия, что и в лабораторных работах 19.1 и 19.2. Напишите код, который бы использовал функцию и хранимую процедуру из этого пакета. Решение:Код на создание пакета может быть таким: create package pkgSalary As function fSalary(emp_id IN number) RETURN number; procedure pSalary(emp_id number, nSalary number); end pkgSalary; Код на создание тела пакета может быть таким: create package body pkgSalary AS function fSalary(emp_id IN number) RETURN number is nSalary number(10,2); BEGIN SELECT salary into nSalary from employees where employee_id = emp_id; RETURN nSalary; end; procedure pSalary(emp_id number, nSalary number) AS BEGIN update hr.employees set salary = nSalary where employee_id = emp_id; END; end pkgSalary; Код на запуск функции из пакета может выглядеть так: begin dbms_output.put_line(pkgSalary.fSalary(100)); end; Код на запуск процедуры из пакета может выглядеть так: begin pkgSalary.pSalary(100, 26000); end;
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||