Dear experts,
I want to insert to insert bulk data into ADM_SYSTEM_AVG TABLE ,While performing below block
i'm getting following error,please suggest me insert data by using bulk collect
PLS-00497: cannot mix between single row and multi-row (BULK) in INTO list
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
DECLARE
CURSOR CUR_ADMSDISC IS
SELECT 'Disc', VOLUME, AVG(CAST(NVL(CURR_SIZE,0) AS NUMBER(19))),AVG(CAST(NVL(TOTAL_SIZE,0) AS NUMBER(19))),
SYSDATE-1,EXTRACT(MONTH FROM SYSDATE-1),EXTRACT(YEAR FROM SYSDATE-1)
FROM SYSTEM_DISC_INFO_HISTORY
WHERE UPDATED_DATE_TIME >= trunc(SYSDATE) -1
and UPDATED_DATE_TIME < trunc(SYSDATE)
GROUP BY VOLUME
UNION ALL
SELECT 'Processor',CPU_NUMBER, AVG(CAST(NVL(BUSY_PERCENTAGE,0) AS NUMBER(10))),0, SYSDATE-1, EXTRACT(MONTH FROM SYSDATE-1),
EXTRACT(YEAR FROM SYSDATE-1)
FROM SYSTEM_PROCESSOR_INFO_HISTORY
WHERE UPDATED_DATE_TIME >= trunc(SYSDATE)-1
and UPDATED_DATE_TIME < trunc(SYSDATE)
GROUP BY CPU_NUMBER;
V_TYP CUR_ADMSDISC%ROWTYPE;
BEGIN
OPEN CUR_ADMSDISC;
LOOP
FETCH CUR_ADMSDISC BULK COLLECT INTO V_TYP;
FORALL I IN 1..V_TYP.COUNT
INSERT INTO ADM_SYSTEM_AVG VALUES V_TYP(I);
EXIT WHEN CUR_ADMSDISC%NOTFOUND;
END LOOP;
CLOSE CUR_ADMSDISC;
END;
please help