在oracle中的parallel查询服务器erorr中发出信号



我有一个这样的查询。

PROCEDURE Update_Student(p_st_date)
IS
BEGIN
EXECUTE IMMEDIATE 'INSERT /*+ APPEND */ INTO  student(student_id) 
select student_id from old_student st, old_emails em
where st.id = em.id and st.date = TO_DATE( '''||p_st_date||''',''dd.mm.yyyy'') '
END Update_Student

我运行此查询时出现以下错误。

ERROR:ORA-12801: error signaled in parallel query server P007

我的选择查询返回24k行。你不知道我为什么会犯这个错误。我尝试了一些类似alter session set events '10384 trace name context forever , level 16384';的更改语句但它不起作用。

您编写的查询中没有任何动态内容,那么为什么是动态SQL呢?

从开始

insert into student (student_id) 
select st.student_id 
from old_student st join old_emails em on st.id = em.id
--
-- after you edited the question: you should pass P_ST_DATE as DATE datatype and then
where st.date = p_st_date
-- if P_ST_DATE is VARCHAR2, then apply TO_DATE to it

然后——如果必须的话——应用提示。

最新更新