存储过程执行返回“2733”或提示“无效的操作类型

发布时间:  2015-04-15 浏览次数:  141 下载次数:  0
问题描述
问题现象
执行存储过程时,返回错误码“2733”或提示“无效的操作类型”的常见场景如下:

 场景一
数据源:icdsql,Msg Hstmt= [60373], RecvTime=15:02:24:375, SessionTime=15:02:24:375 ,Time: 2009-05-11;15:02:24,来源:10.246.95.13:54(UIS),类型:MSG_PROXY_EXECUTE_NEW,语句:spInsertRecordInfoLog,输入:1:1242025290-7670491;2:6143;3:13553546520;4:6143;5:6;6:1;7:2009-05-11 15:01:47;8:2009-05-11 15:02:24;9:K:\1\0\20090511\6143\1501479.V3;10:1;11:8;12:2009-05-11 15:01:30;13:-1720314777;14:5;15:1;16:627;17:0;18:;19:;20:1;22:31874;,结果:失败,描述:无效的操作类型,错误:错误类型: SA_DBMS_API_ERROR; 错误码: 24372; 错误描述: ORA-24372: INVALID OBJECT FOR DESCRIBE

 场景二
数据源:icd_main,Msg Hstmt= [38], RecvTime=14:26:26:786, SessionTime=14:26:26:786 ,Time: 2009-05-08;14:26:26:801,来源:10.70.101.104:10(CCS),类型:MSG_PROXY_EXECUTE_NEW,语句:p_aplogic_test,输入:1:123777;3:125;,结果:失败,描述:无效的操作类型,错误:Setting param [3] 's info failed, param position[2] has reached the summit[2].

 场景三
数据源:icd_main,Msg Hstmt= [1], RecvTime=14:30:59:662, SessionTime=14:30:59:662 ,Time: 2009-05-08;14:30:59:662,来源:10.70.101.104:10(CCS),类型:MSG_PROXY_EXECUTE_NEW,语句:p_aplogic_test,输入:1:123777;,结果:失败,描述:无效的操作类型,错误:Binding input param 1 failed, type:[204], len:[4]. But in DB they are: type:[6], name:[I_NUM1]
处理过程
 场景一
错误描述: ORA-24372: INVALID OBJECT FOR DESCRIBE
根据错误提示可知是由于存储失效或数据库中没有这个存储过程。造成这个错误的常见原因如下:
− 没有存储过程:在升级平台、修改用户权限、修改数据源配置时容易出现。
− 存储失效:在修改、删除数据库中的某些数据表时容易出现。
如果是此情况,请在修改、删除操作结束后,将存储过程重新编译。

 场景二
错误:Setting param [3] 's info failed, param position[2] has reached the summit[2].
根据错误原因可知是调用存储过程时的调用参数与数据库中实际存储过程的参数个数不一致。在升级平台的准备阶段以及在第三方数据库存储过程升级时容易出现。

 场景三
错误:Binding input param 1 failed, type:[204], len:[4]. But in DB they are: type:[6], name:[I_NUM1]
根据错误原因可知是调用存储过程时的调用参数与数据库中实际存储过程的参数类型不一致。在升级平台的准备阶段以及在第三方数据库存储过程升级时容易出现。

END