Damit der Webservice erstellt werden kann, müssen zunächst ein paar Schritte auf der Datenbank durchgeführt werden. Weiter unten findet sich ein Script, welches die folgenden Schritte komplett ausführt. Zum setzen des Oracle-Environments kann das Oracle-Skript oraenv wie folgt genutzt werden, die Voreinstellung orcl kann übernommen werden.
. oraenv
Zunächst wird die Datenbank-Tabelle EMPLOYEES im Schema HR um eine Spalte HOLIDAYS erweitert, welche sich unfairerweise aus dem Gehalt geteilt durch 100 ergibt.
alter table EMPLOYEES add(holidays NUMBER);
update employees set holidays= round( salary/100 );
commit;
Weiterhin wird ein Package HR_INFO erstellt, welches eine Stored Procedure GetHRinfo enthält die uns die gewünschten Informationen aus der Datenbank holt.
CREATE OR REPLACE PACKAGE HR_INFO AS
PROCEDURE GETHRINFO
(
EMPID IN NUMBER,
FIRSTNAME OUT VARCHAR2,
LASTNAME OUT VARCHAR2
);
PROCEDURE GETHRINFO2
(
EMPID IN NUMBER,
FIRSTNAME OUT VARCHAR2,
LASTNAME OUT VARCHAR2,
HOLIDAYS OUT NUMBER
);
END HR_INFO;
/
CREATE OR REPLACE PACKAGE BODY HR_INFO AS
PROCEDURE GETHRINFO
(
EMPID IN NUMBER,
FIRSTNAME OUT VARCHAR2,
LASTNAME OUT VARCHAR2
) AS
BEGIN
select first_name, last_name
into firstname, lastname
from employees
where employee_id = empid;
END GETHRINFO;
PROCEDURE GETHRINFO2
(
EMPID IN NUMBER,
FIRSTNAME OUT VARCHAR2,
LASTNAME OUT VARCHAR2,
HOLIDAYS OUT NUMBER
) AS
BEGIN
select first_name, last_name, holidays
into firstname, lastname, holidays
from employees
where employee_id = empid;
END GETHRINFO2;
END HR_INFO;
/
Diese Schritte werden komplett von dem Script HR_INFO.sql (~oracle/Workshop) durchgeführt. Ausgeführt wird es mit
sqlplus hr/hr @HR_INFO.sql
Damit ist die Datenbank für die folgenden Workshop-Aufgaben fertig vorbereitet.
---> Nächster Schritt: PL/SQL-Webservice erstellen, Webservice generieren
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.