我应该从Java调用一个过程
PROCEDURE getArray ( result OUT INTEGER,
code IN CODE%TYPE,
type IN TYPEELEMENT%TYPE,
array OUT ARRAY_T,
state IN INTEGER DEFAULT NULL);
ARRAY_T是create or replace TYPE ARRAY_T IS TABLE OF ARRAY_T_ELEMENT;
create or replace TYPE ARRAY_T_ELEMENTIS OBJECT
(
ELEMENT_FATHER VARCHAR2(64),
TYPE_ELEMENT VARCHAR2(10),
DATE_BEGIN DATE,
COD_ERR VARCHAR2(10)
);
我的java代码是
stmt.registerOutParameter(1, Types.INTEGER);
stmt.setString(2, code);
stmt.setString(3, elementType);
stmt.registerOutParameter(4, Types.ARRAY,"ARRAY_T" );
stmt.setInt(5,1);
出现的错误是冲突参数类型。
我不明白我错在哪里,而且我也想知道如何为最后一个值传递任何东西,因为在这种情况下我会使用defualt。
非常感谢