执行以下脚本时
SELECT aggr_func(bki_aggr_input(t.app_date,
t.amount,
t.rate,
t.term,
t.OPEN_DATE,
t.STATUS_ID,
t.INF_CONFIRM_DATE,
t.FACT_CLOSE_DATE,
t.PMT_STRING_84M,
t.flag_is_own_contract,
t.OUTSTANDING,
t.CREDIT_LIMIT,
t.TYPE_ID,
t.FINAL_PMT_DATE)) p
FROM temp_tab t
其中aggr_func是用户定义的聚合函数 我收到了ORA-22813错误
功能是
CREATE OR REPLACE FUNCTION BKI_AGGR_CALC(input_var IN BKI_AGGR_INPUT)
RETURN BKI_AGGR_OUTPUT
PARALLEL_ENABLE
AGGREGATE USING BKI_AGGR_ROUTINES;
,类型BKI_AGGR_ROUTINES
的规范是
CREATE OR REPLACE TYPE BKI_AGGR_ROUTINES AS OBJECT
(
acc_opn_vs_problem NUMBER,
pat_opened_12 NUMBER,
pat_del1p_3 NUMBER,
max_hist_own NUMBER,
cntOpenAccounts NUMBER,
cntAllAccounts NUMBER,
ratio_open NUMBER,
patternsArray NUMBER_TWO_DIMENSIONAL_TAB,
unionPattern NUMBER_TAB,
m_nodelinq NUMBER,
outstanding_to_credit_limit NUMBER,
sumOutstanding NUMBER,
sumCreditLimit NUMBER,
paymentPatArray NUMBER_TWO_DIMENSIONAL_TAB,
unionPaymentPat NUMBER_TAB,
sumMonthPayOpn NUMBER,
load_to_avgpaym_24 NUMBER,
reqMonthPay NUMBER,
sumOpenStartInCrisis NUMBER,
sumAllCredits NUMBER,
ratio_crs_not_sum NUMBER,
ratio_m_up NUMBER,
cnt NUMBER,
STATIC FUNCTION ODCIAggregateInitialize(actx IN OUT BKI_AGGR_ROUTINES)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateIterate(SELF IN OUT BKI_AGGR_ROUTINES,
inputVar IN BKI_AGGR_INPUT)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateMerge(SELF IN OUT BKI_AGGR_ROUTINES,
ctx2 IN BKI_AGGR_ROUTINES)
RETURN NUMBER,
MEMBER FUNCTION ODCIAggregateTerminate(SELF IN OUT BKI_AGGR_ROUTINES,
returnVar OUT BKI_AGGR_OUTPUT,
flags IN NUMBER) RETURN NUMBER
)
可能导致错误的原因是什么?我该如何调查并修复它? 谢谢。