-- --------------------------------------------------------------------------
--                    MySQL
-- --------------------------------------------------------------------------
USE `biblioteca`;

DROP PROCEDURE IF EXISTS consulta_titulo_pro;
DROP FUNCTION IF EXISTS consulta_titulo_fun;
                         
DELIMITER //

CREATE PROCEDURE consulta_titulo_pro(IN id_libro_recibido CHAR(5), OUT titulo_encontrado VARCHAR(60))
BEGIN
  SELECT titulo INTO titulo_encontrado FROM libros WHERE id_libro = id_libro_recibido;
END//


CREATE FUNCTION consulta_titulo_fun(id_libro_recibido CHAR(5)) RETURNS VARCHAR(60)
BEGIN
  DECLARE titulo_encontrado VARCHAR(60);
  SELECT titulo INTO titulo_encontrado FROM libros WHERE id_libro = id_libro_recibido;
  RETURN titulo_encontrado;
END//

DELIMITER ;  


-- --------------------------------------------------------------------------
--                    Oracle
-- --------------------------------------------------------------------------
  
CREATE OR REPLACE PROCEDURE consulta_titulo_pro (id_libro_recibido IN CHAR, titulo_encontrado OUT VARCHAR2)
   AS retorna VARCHAR2(60);
BEGIN
   SELECT titulo INTO retorna FROM libros WHERE id_libro = id_libro_recibido;
   titulo_encontrado := retorna;
END consulta_titulo_pro;
/


CREATE OR REPLACE FUNCTION consulta_titulo_fun(id_libro_recibido CHAR)
   RETURN VARCHAR2 
   AS retorna VARCHAR2(60);
BEGIN
   SELECT titulo INTO retorna FROM libros WHERE id_libro = id_libro_recibido;
   RETURN retorna;
END consulta_titulo_fun;
/

