Store Select procedure in Oracle can not find data

0

I have the following code in Oracle:

CREATE OR REPLACE PROCEDURE STOREDSUBMODULOS(IDCATMODULO IN NUMBER , IDCATSUBMODULO OUT NUMBER , CLAVESUBMODULO OUT VARCHAR2 , DESCRIP OUT VARCHAR2) 
AS 
BEGIN
    SELECT 
    ID_CAT_SUBMODULO    ,
    CLAVE_SUBMODULO     ,
    DESCRIPCION         
    INTO 
    IDCATSUBMODULO      ,
    CLAVESUBMODULO      ,
    DESCRIP
  FROM 
    SIOV_CAT_SUBMODULO
  WHERE
    ID_CAT_MODULO = IDCATMODULO;
END STOREDSUBMODULOS;  
/
DECLARE
   IDCATMODULO NUMBER(5); 
   IDCATSUBMODULO NUMBER(5); 
   CLAVESUBMODULO VARCHAR2(10); 
   DESCRIP VARCHAR2(100); 
BEGIN
  STOREDSUBMODULOS(IDCATMODULO, IDCATSUBMODULO, CLAVESUBMODULO, DESCRIP);
END;

and I already have the table SIOV_CAT_SUBMODULO created and filled, but what I want is for the procedure to make a vile select, when executing the following sentence:

SELECT 
    ID_CAT_SUBMODULO    ,
    CLAVE_SUBMODULO     ,
    DESCRIPCION         
  FROM 
    SIOV_CAT_SUBMODULO;

does what I want the procedure to do. Any ideas?

    
asked by Omar 10.03.2017 в 19:07
source

1 answer

0

With this code, you consult me perfectly:

CREATE OR REPLACE PROCEDURE STOREDSUBMODULOS(IDCATMODULO    IN NUMBER,
                                         IDCATSUBMODULO OUT NUMBER,
                                         CLAVESUBMODULO OUT VARCHAR2,
                                         DESCRIPT        OUT VARCHAR2,
                                         PV_ERROR OUT VARCHAR2) IS

ID_CAT_SUBMODULO NUMBER(5):=null;
CLAVE_SUBMODULO VARCHAR2(10):=null;
DESCRIP VARCHAR2(100):=null;
BEGIN
SELECT ID_CAT_SUBMODULO, CLAVE_SUBMODULO, DESCRIPCION
INTO ID_CAT_SUBMODULO, CLAVE_SUBMODULO, DESCRIP
FROM SIOV_CAT_SUBMODULO
WHERE ID_CAT_MODULO = IDCATMODULO;

IDCATSUBMODULO:=ID_CAT_SUBMODULO;
CLAVESUBMODULO:=CLAVE_SUBMODULO;
DESCRIPT:=DESCRIP;

exception
 when no_data_found then
   PV_ERROR:='No Se encuentra el DATO en la Base';
END STOREDSUBMODULOS;
    
answered by 10.03.2017 в 22:25