问题是如何插入 VARRAY - 我有一个程序,我在程序中将参数声明为表数据类型,我使用 INSERT 语句插入表。我已经面临插入 VARRAY 的问题 我在包装规范中声明了不同的类型并在正文中使用 BT 错误显示:-错误(61,17):PL/SQL:ORA-00932:不一致的数据类型:预期的数字得到了 SCOTT .SYS_PLSQL_75329_19_1
create or replace PACKAGE BODY CBIS_LOAN_PROD_PACKAGE AS
PROCEDURE LOAN_PRODUCT_INSERT_PROCEDURE
(P_PRODUCT_TITLE LOAN_PROD_TAB.PRODUCT_TITLE%TYPE,
P_PRODUCT_SUMMERY LOAN_PROD_TAB.PRODUCT_SUMMERY%TYPE,
P_INTEREST_TYPE LOAN_PROD_TAB.INTEREST_TYPE%TYPE,
P_INTEREST_RATE LOAN_PROD_TAB.INTEREST_RATE%TYPE,
P_SECURITY_REQD LOAN_PROD_TAB.SECURITY_REQD%TYPE,
P_MIN_LOAN_AMT LOAN_PROD_TAB.MIN_LOAN_AMT%TYPE,
P_MAX_LOAN_AMT LOAN_PROD_TAB.PRODUCT_TITLE%TYPE,
P_TERM_MIN LOAN_PROD_TAB.TERM_MIN%TYPE,
P_TERM_MAX LOAN_PROD_TAB.TERM_MAX%TYPE,
P_REPAYMENT_FREQUENCY LOAN_PROD_TAB.REPAYMENT_FREQUENCY%TYPE,
P_REPAYMENT_AMT LOAN_PROD_TAB.REPAYMENT_AMT%TYPE,
P_EARLY_REPAY_ALLOWED LOAN_PROD_TAB.EARLY_REPAY_ALLOWED%TYPE,
P_MIN_AGE_LIMIT LOAN_PROD_TAB.MIN_AGE_LIMIT%TYPE,
P_MAX_AGE_LIMIT LOAN_PROD_TAB.MAX_AGE_LIMIT%TYPE,
V_1 VARCHAR2,
V_2 VARCHAR2,
V_3 VARCHAR2,
V_4 VARCHAR2,
V_5 VARCHAR2,
P_PROD_START_DT LOAN_PROD_TAB.PROD_START_DT%TYPE,
P_PROD_END_DT LOAN_PROD_TAB.PROD_END_DT%TYPE,
P_PROD_STATUS LOAN_PROD_TAB.PROD_STATUS%TYPE)
IS
V_T RESIDENT_VARRAY:=RESIDENT_VARRAY('V_1','V_2','V_3','V_4','V_5');
BEGIN
INSERT INTO LOAN_PROD_TAB
(
PRODUCT_TITLE,
PRODUCT_SUMMERY,
INTEREST_TYPE,
INTEREST_RATE,
SECURITY_REQD,
MIN_LOAN_AMT,
MAX_LOAN_AMT,
TERM_MIN,
TERM_MAX,
REPAYMENT_FREQUENCY,
REPAYMENT_AMT,
EARLY_REPAY_ALLOWED,
MIN_AGE_LIMIT,
MAX_AGE_LIMIT,
RESIDENT,
PROD_START_DT,
PROD_END_DT,
PROD_STATUS)
VALUES(P_PRODUCT_TITLE,
P_PRODUCT_SUMMERY,
P_INTEREST_TYPE,
P_INTEREST_RATE,
P_SECURITY_REQD,
P_MIN_LOAN_AMT,
P_MAX_LOAN_AMT,
P_TERM_MIN,
P_TERM_MAX,
P_REPAYMENT_FREQUENCY,
P_REPAYMENT_AMT,
P_EARLY_REPAY_ALLOWED,
P_MIN_AGE_LIMIT,
P_MAX_AGE_LIMIT,
V_T,/*PROBLEM IS HERE-Error(61,17): PL/SQL: ORA-00932: inconsistent
datatypes: expected NUMBER got SCOTT.SYS_PLSQL_75329_19_1*/
P_PROD_START_DT,
P_PROD_END_DT,
P_PROD_STATUS
);
END LOAN_PRODUCT_INSERT_PROCEDURE;
END;