gpt4 book ai didi

oracle - PLS-00222在此范围内不存在名称为 'WRITE_ERROR_LOG'的功能

转载 作者:行者123 更新时间:2023-12-03 09:11:15 27 4
gpt4 key购买 nike

刚刚完成编写将错误记录到表中的错误日志过程。我刚完成我的第一个异常处理程序,由于此错误,我无法编译该程序包。

我相信我在调用write_error_log过程时遇到此错误。
以下是包装中的代码。

CREATE OR REPLACE PACKAGE BODY AOMS.customer IS

PROCEDURE
customer_collateral_hist(i_Vcust_cd IN customer_collateral_history.cust_cd%TYPE,
i_Vfromdate IN customer_collateral_history.reg_dttm%TYPE,
i_Vtodate IN customer_collateral_history.reg_dttm%TYPE,
i_Vauthstat IN customer_collateral_history.auth_stat%TYPE,
o_Cresultset OUT SYS_REFCURSOR)
AS
v_in_out_parm VARCHAR2(4000) := NULL;

BEGIN
OPEN o_Cresultset FOR
SELECT auth_stat,
buld_size,
clos_dt,
cnfm_dt,
cnfm_tm,
cnfm_user_id,
cust_cd,
date_seq,
dbtr,
dbtr_addr,
dbtr_id,
dbtr_tel_no,
dbtr_zip_cd1,
dbtr_zip_cd2,
esta_orga,
grnt_dt_from,
grnt_dt_to,
jdg_amt,
jdg_dt,
land_size,
loc_addr,
mort_amt,
mort_chng_dt,
mort_flag,
mort_max_amt,
mort_seq,
mort_stat,
old_key,
ownr,
ownr_addr,
ownr_id,
ownr_tel_no,
ownr_zip_cd1,
ownr_zip_cd2,
prev_mort_amt,
redm_dt,
reg_dt,
reg_dttm,
reg_flag,
reg_user_id,
remark,
supr_pow_flag
FROM customer_collateral_history
WHERE cust_cd LIKE '%'||NVL(i_Vcust_cd, cust_cd)||'%'
AND TO_NUMBER(SUBSTR(reg_dttm, 1, 8)) >= NVL(i_Vfromdate, TO_NUMBER(SUBSTR(reg_dttm, 1, 8)))
AND TO_NUMBER(SUBSTR(reg_dttm, 1, 8)) <= NVL(i_Vtodate, TO_NUMBER(SUBSTR(reg_dttm, 1, 8)))
AND auth_stat LIKE '%'||NVL(i_Vauthstat, auth_stat)||'%';
EXCEPTION
WHEN OTHERS THEN

V_IN_OUT_PARM := 'vcust_cd: '||i_vcust_cd||'fromdate:' ||i_vfromdate|| 'vtodate:' ||i_vtodate|| 'authstat:' || i_vauthstat||

write_error_log(SQLERRM,dbms_utility.format_error_backtrace,V_IN_OUT_PARM);
-- if you want to halt execution re-raise the error up the stack
RAISE;
END customer_collateral_hist;

END customer;
/

有谁知道这是什么原因。 write_error_log是一个存储过程。如果还有其他信息,我可以向任何人提供。

最佳答案

我认为错误在这条线上:

V_IN_OUT_PARM :=  'vcust_cd: '||i_vcust_cd||'fromdate:' ||i_vfromdate|| 'vtodate:' ||i_vtodate|| 'authstat:' || i_vauthstat||

它似乎意外结束了。您还需要将其他内容链接到 V_IN_OUT_PARAM还是最后一个 ||应该是 ;

因为您已经用 ||结束了它,所以它看起来像Oracle一样想要将调用 write_error_log的结果连接到该字符串。当然,您无法执行此操作,因为您没有名为 write_error_log的函数。

关于oracle - PLS-00222在此范围内不存在名称为 'WRITE_ERROR_LOG'的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32661238/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com