Saltar al contenido

pasar lista de valores como parámetro de entrada al procedimiento PL / SQL

Solución:

CREATE OR REPLACE PACKAGE PKG_TEST AS
TYPE X IS TABLE OF VARCHAR2(30);
PROCEDURE XYZ(Y IN X);
END PKG_TEST;
/

El tipo se puede declarar como “TABLE OF” O “VARRAY (10)”;

CREATE OR REPLACE PACKAGE  BODY PKG_TEST AS
PROCEDURE XYZ(Y IN X) AS
BEGIN
  FOR I IN Y.FIRST..Y.LAST
    LOOP
      DBMS_OUTPUT.PUT_LINE('THE VALUE OF I IS'||Y(I));
    END LOOP;
  END;
END PKG_TEST;
/

DECLARE   
BEGIN
  PKG_TEST.XYZ('1','2','3','4');
END;
/

Puede usar un parámetro varchar en sql, cada valor debe estar separado por una coma, algo como esto: ‘valor1, valor2, valor3, valor4, …,’

Entonces, puede leer los valores usando la función split de sql

Espero haber entendido tu pregunta

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *