错误: - 尝试执行以下过程时出现以下错误 ORA-06502:PL / SQL:数值或值错误 ORA-06512:在“proc1”,第31行 ORA-06512:第10行
代码: -
create or replace
PROCEDURE proc1 (
p_param1 IN INTEGER
)
IS
CURSOR c_cursor1 IS
SELECT EMPLOYEE_ID FROM Employees ;
r_EMPLOYEE_ID_tobe_updated c_cursor1%ROWTYPE;
v_params VARCHAR2 (32767) := '';
BEGIN
OPEN c_cursor1;
LOOP
FETCH c_cursor1 INTO r_EMPLOYEE_ID_tobe_updated;
EXIT WHEN c_cursor1%NOTFOUND;
IF v_params = '' THEN
v_params := v_params || r_EMPLOYEE_ID_tobe_updated.EMPLOYEE_ID;
ELSE
v_params := v_params || ', ' || r_EMPLOYEE_ID_tobe_updated.EMPLOYEE_ID;
END IF;
END LOOP;
CLOSE c_cursor1;
DBMS_OUTPUT.PUT_LINE('outcome:: ' || v_params );
END proc1;
错误: - ORA-06502:PL / SQL:数值或值错误 ORA-06512:在“proc1”,第31行 ORA-06512:第10行
Employee_id字段详情: - Employee_Id NUMBER(9)NOT NULL
你能帮帮我吗?
答案 0 :(得分:0)
这不起作用。您不能将dbms_output用于put_line包含900k行值的单个字符串。使用UTL_FILE包并将每一行写入文本文件。仍然是一个大文件,需要一段时间