0

使用以下代码,我收到一条错误消息,指出参数数量无效。

        $stmt = $this->db->PrepareSP("DECLARE SONUC VREPORT_ARRAY; BEGIN ZDS.ADMIN_REPORT(:SORGU_TARIH,:SONUC); END;");
        $this->db->InParameter($stmt,$DATA['SORGU_TARIH'],'SORGU_TARIH');
        $this->db->OutParameter($stmt,$output,'SONUC');
        $rs = $this->db->Execute($stmt);

第二个名为 SONUC 的参数是 VARRAY / TABLE 类型。我不能确定这种返回类型是 unsopperted 还是我遗漏了其他东西。我正在使用 adodb 库进行数据库操作。

编辑:以下是我运行过程调用的错误消息。

oci8 error: [6550: ORA-06550: line 1, column 36: PLS-00306: wrong number or types of arguments in call to 'ADMIN_REPORT' ORA-06550: line 1, column 36: PL/SQL: Statement ignored] in EXECUTE("Array")

编辑2:经过大量试验和浪费时间,它仍然无法正常工作。应用程序有其他语句成功调用存储过程(它们都没有返回输出参数)。它们都是直接通过 Execute 方法执行的。PrepareSP 和 InParameter/OutParameter 从未使用过。

4

0 回答 0