gpt4 book ai didi

oracle - ORA-06530 : Reference to uninitialized composite

转载 作者:行者123 更新时间:2023-12-01 14:46:45 25 4
gpt4 key购买 nike

当我执行包时,我收到一条错误消息:

error in the emp_test ORA-06530: Reference to uninitialized composite

你能解释一下我如何初始化包中的对象类型吗?

CREATE OR REPLACE TYPE emp_obj AS OBJECT
(
emp_no number,
salary number,
job varchar2(20)
);

CREATE OR REPLACE PACKAGE BODY emp_dummy_pk IS
PROCEDURE emp_test IS
CURSOR emp_cur IS
SELECT empno, sal, job FROM emp;

l_emp_no emp_obj;
BEGIN
FOR emp_rec IN emp_cur LOOP
l_emp_no.emp_no := emp_rec.empno;
l_emp_no.salary := emp_rec.sal;
l_emp_no.job := emp_rec.job;

BEGIN
emp_pk.emp_chk( p_emp_no => l_emp_no );
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line( 'error in the emp_pk.emp_no ' || SQLERRM );
END;
END LOOP;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line( 'error in the emp_test ' || SQLERRM );
END;
END;

BEGIN
emp_dummy_pk.emp_test;
END;

最佳答案

您可以使用构造函数对其进行初始化:

l_emp_no := NEW emp_obj( emp_rec.empno, emp_rec.sal, emp_rec.job );

关于oracle - ORA-06530 : Reference to uninitialized composite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3633276/

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