Pokusavam da napravim proceduru koja zahtjeva da korisnik unese vrijednost koja je potrebna u where uslovu.
Procedura izgleda ovako:
PROCEDURE plocations
(
DNAME IN VARCHAR2
) AS
res VARCHAR2(20);
BEGIN
select locName into res from location where lid in (select lid from examine
where did =(select did from dogs where dogname = DNAME)
);
DBMS_OUTPUT.PUT_LINE(res);
END plocations;
Dakle korisnik treba da unese ime psa i da dobije lokaciju.
Proceduru pozivam u SQL*Plus:
SET SERVEROUTPUT ON
VARIABLE DNAME VARCHAR2(20)
accept DNAME prompt "please enter Dog Name: "
exec plocations (:DNAME)
Međutim, dobijam sledeću grešku:
Error starting at line 6 in command:
exec plocations (:DNAME)
Error report:
ORA-01403: no data found
ORA-06512: at "HR.PLOCATIONS", line 10
ORA-06512: at line 1
01403. 00000 - "no data found"
*Cause:
*Action:
Ima li neko ideju?