我继承了一个很棒的600行存储过程,需要在其中进行调试。我正在尝试通过右键单击存储过程的名称进行调试,然后单击“使用sql调试器执行”。这将弹出一个表格,在其中可以手动输入参数。大。除了参数之一是OracleArray vArray
INPUT参数,而且我不确定如何实际输入类似这样的参数作为参数吗?我对Oracle不熟悉。
答案 0 :(得分:1)
您的问题没有很多细节,因此我必须给出模糊的答案。这是调用具有other_procedure
参数或其他复杂设置的过程(名为VARRAY
)的方法。声明测试过程后,可以使用调试器执行该过程,然后进入您真正关心的过程。
CREATE OR REPLACE PROCEDURE test_procedure IS
-- (size and type of the varray should match the one in other_procedure)
TYPE my_array_t IS VARRAY(4) OF VARCHAR2(20);
-- define and initialize your array
test_array my_array_t := my_array_t('one','two','three');
BEGIN
-- call the procedure
other_procedure(test_array);
END;
/
如果您仍然遇到问题,请编辑问题以提供更多详细信息(例如过程定义和varray定义),我们可以提供更具体的答案。