CREATE OR REPLACE procedure HRD.proc_long_raw2 as
CURSOR MyCursor IS SELECT empno, emp_pic FROM emp_personal_old
where empno='100959';
vField1 varchar(20);
vRawField long raw;
iCount integer;
BEGIN
iCount := 0;
OPEN MyCursor;
LOOP
FETCH MyCursor INTO vField1, vRawField;
EXIT WHEN MyCursor%NOTFOUND;
iCount := iCount + 1;
INSERT INTO emp_personal (empno, emp_pic)
VALUES (vField1, vRawField);
--Commit every 10 rows
IF iCount = 10 THEN
iCount := 0;
COMMIT;
END IF;
END LOOP;
COMMIT;
CLOSE MyCursor;
END;
/
Giving Error
------------------
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at "HRD.PROC_LONG_RAW2", line 16
ORA-06512: at line 2
Table Create
-------------------
CREATE TABLE HRD.EMP_PERSONAL
(
EMPNO VARCHAR2(20 BYTE),
EMP_PIC long raw
)