0

My Oracle ストアド プロシージャは結果を返しません。SPROC の外部でクエリをテストしたところ、値が返されるようです。サンプルとテストのパラメーターを渡す方法に関係があると感じています。Stored Proc で sampleNumber と testNumber のパラメーターをハードコーディングすると、結果が正しく返されるためです。プロシージャと PLSQL 宣言を貼り付けました。私は Oracle プロシージャーの作成に非常に慣れていないため、どんな助けも大歓迎です。ありがとうございました。

    CREATE OR REPLACE PROCEDURE TESTANALYSIS
    (vOrderNumber IN VARCHAR2
    , vTestNumber IN NUMBER
    , vSampleNumber IN NUMBER
    ) 

    AS

    anVar VARCHAR2(50) := NULL;

    BEGIN

    SELECT T.ANALYSIS INTO anVar FROM TEST T JOIN SAMPLE S
    ON T.SAMPLE_NUMBER = S.SAMPLE_NUMBER
    WHERE T.TEST_NUMBER = vTestNumber
    AND S.SAMPLE_NUMBER = vSampleNumber
    AND S.ORDER_NUM = vOrderNumber;

    dbms_output.put_line(anVar);

    END TESTANALYSIS;


    --PL SQL Call 
    SET SERVEROUTPUT ON
    EXEC TESTANALYSIS('4200010061', 720000050516, 14789)
    /
4

0 に答える 0