我坚持将日期作为数组参数从 Oracle Apex 页面传递到包中。包包含一个带有日期类型数组的过程。所以我想做的是从 Apex 页面 pl/sql 块中传递一个简单的日期。到目前为止,这是我的代码:
create or replace PACKAGE PK_NAME AS
TYPE DATES_ARRAY_TYPE IS VARRAY(100) OF DATE;
PROCEDURE PASS_DATES (
DATES DATES_ARRAY_TYPE
);
END PK_NAME;
create or replace PACKAGE BODY PK_NAME AS
PROCEDURE PASS_DATES (
DATES DATES_ARRAY_TYPE
) AS
BEGIN
for i in 1..DATES.count loop
HTP.P(DATES(i));
end loop;
END;
END PASS_DATES;
END PK_NAME;
就那么简单。我从 Apex 页面 pl/sql 块中调用此过程:
PK_NAME.PASS_DATES (
DATES => '15-JAN-15', '16-JAN-15', '17-JAN-15'
);
但是,它不起作用,每次我尝试保存它时,它都会给我一个错误:
•ORA-06550:第 3 行,第 25 列:PLS-00312:位置参数关联可能不遵循命名关联 ORA-06550:第 2 行,第 1 列:PL/SQL:语句被忽略
它有什么问题或我错过了什么?