Nella procedura memorizzata Oracle dobbiamo SELECT i valori nelle variabili o nei parametri. Per favore leggi i documenti .
Prova a creare la tua procedura memorizzata nel modo seguente.
CREATE OR REPLACE PROCEDURE finddb (
p_bookid IN bookmaster.bookid%TYPE,
p_publishercode OUT bookmaster.publishercode%TYPE,
p_isbncode OUT bookmaster.isbncode%TYPE,
p_bookname OUT bookmaster.bookname%TYPE,
p_booktype OUT bookmaster.booktype%TYPE,
p_booklevel OUT bookmaster.booklevel%TYPE,
p_bookcategory OUT bookmaster.bookcategory%TYPE,
p_authornames OUT bookmaster.authornames%TYPE,
p_publishedyear OUT bookmaster.publishedyear%TYPE,
p_costprice OUT bookmaster.costprice%TYPE,
p_mrp OUT bookmaster.mrp%TYPE,
p_bookimage OUT bookmaster.bookimage%TYPE
)
AS
BEGIN
SELECT publishercode,
isbncode,
bookname,
booktype,
booklevel,
bookcategory,
authornames,
publishedyear,
costprice,
mrp,
bookimage
INTO p_publishercode,
p_isbncode,
p_bookname,
p_booktype,
p_booklevel,
p_bookcategory,
p_authornames,
p_publishedyear,
p_costprice,
p_mrp,
p_bookimage
FROM bookmaster
WHERE bookid = p_bookid;
END finddb;
/