Stored procedure ini menggunakan variable sebagai penampung hasil searching pada suatu tabel.

 CREATE OR REPLACE PROCEDURE CARIDATA (CARINOMOR IN VARCHAR2, IDDATA OUT VARCHAR2, KODE OUT VARCHAR2, NAMA  OUT VARCHAR2) AS
   BEGIN
    SELECT A.ID_DATA,A.CODE,B.NAME INTO IDDATA, KODE,NAMA
    FROM <table Name> A, <table Name> B
    WHERE A.CODE = B.CODE AND A.ID_DATA = CARINOMOR;
   END;

sedangkan untuk stored procedure tanpa Return Value adalah sebagai berikut:

CREATE OR REPLACE PROCEDURE CARIDATA(AWAL IN VARCHAR2, AKHIR IN VARCHAR2,CEKAWAL VARCHAR2,KODE VARCHAR2, DISTRIK VARCHAR2, TGL DATE) AS
LOCAL_AWAL NUMBER(13);
LOCAL_AKHIR NUMBER(13);
LOCAL_CEK NUMBER(1);
VAR_AWAL VARCHAR2(13);
VAR_CEK_AWAL VARCHAR2(1);
BEGIN
 LOCAL_AWAL := TO_NUMBER(AWAL);
 LOCAL_AKHIR := TO_NUMBER(AKHIR);
 LOCAL_CEK := TO_NUMBER(CEKAWAL);
 WHILE LOCAL_AWAL <= LOCAL_AKHIR LOOP
  VAR_CEK_AWAL := TO_CHAR(LOCAL_CEK);
  VAR_AWAL := TO_CHAR(LOCAL_AWAL);
  INSERT INTO <nama Tabel> VALUES(VAR_AWAL,VAR_CEK_AWAL,TGL,DISTRIK,KODE);
   LOCAL_AWAL := LOCAL_AWAL + 1;
   LOCAL_CEK := LOCAL_CEK+1;
   IF LOCAL_CEK = 7 THEN
    LOCAL_CEK := 0;
   END IF;
 END LOOP;
 COMMIT;
END;