0
我寫一個腳本,並得到了一個錯誤,同時節省行值到變量 我嘗試更新,我需要從其他相應的表來獲取表PL/SQL存儲一行到一個變量,並使用他們的循環
DECLARE
cur SYS_REFCURSOR;
dept_row department%rowtype;
employee_row employee%rowtype;
status number :=0;
BEGIN
FOR employee_details IN (select * from employee_details_table)
LOOP
select * into dept_row from department dept where employee_details.dept_id = dept.dept_id;
select * into employee_row from employee emp where emp.dept_id = empoyee_details.dept_id;
IF employee_details.valid <> employee_row.valid THEN
// call SP which uses values from both dept_row & employee_row
END IF;
END LOOP;
COMMIT;
END;
/
當我運行上面的SQL時出現錯誤。 ORA-01722 ORA-06512
我無法弄清楚上面的代碼有什麼問題。 請幫助
感謝
您正在使用'集合'不正確。此外,最好避免使用for循環,並使用bulk collect和forall語句來儘量減少sql和plsql引擎之間的上下文切換開銷。檢查我的答案。 – 2014-10-26 15:22:30