C# ODP.Net Ora-6553 pls-752:表函数fnXXXXX处于不一致状态,如何避免?

C# ODP.Net Ora-6553 pls-752:表函数fnXXXXX处于不一致状态,如何避免?,c#,oracle,odp.net,C#,Oracle,Odp.net,编译Oracle包后,我得到了错误ODP.Net异常Ora-6553 pls-752:表函数ftRoutineSchema('package','routinename') 函数ftRoutineSchema('x','y')访问用户参数表以检索参数信息以构造command.parameters 我怎样才能避免这种情况 function ftRoutineSchema(pkg varchar2,Routine varchar2) return tblRoutineSchema PIPELI

编译Oracle包后,我得到了错误ODP.Net异常Ora-6553 pls-752:表函数ftRoutineSchema('package','routinename')

函数ftRoutineSchema('x','y')访问用户参数表以检索参数信息以构造command.parameters

我怎样才能避免这种情况

 function ftRoutineSchema(pkg varchar2,Routine varchar2) return  tblRoutineSchema  PIPELINED is 
      x recRoutineSchema;
       pkN  varchar2(100);
   rtN  varchar2(100);
   Begin 

     FOR Y in ( Select Argument_Name  ColumnName
                      ,Data_type      DataType
                      ,Position       ColumnOrder
                      ,In_out         Direction
                      ,Data_length    SSize 
                   from   user_ARGUMENTS 
                      where  package_Name=Upper(pkg) 
                         and object_name=Upper(Routine) order by position 

                         ) 
     LOOP
       PIPE ROW(Y);
     END LOOP;

     Return;  
   End;
好了,各位,再次抱歉:
在重新编译none debug之后,我在调试模式下编译了包。一切正常。

这是Oracle plsql错误,而不是ODP错误。你能给我们看看
fnXXXXX
?它是一个流水线函数吗?你是否在数据库中做了一些更改,例如删除了你正在使用的模式类型或其他什么?在Q:中包含了代码,请注意,我回答了我自己的问题。