简体   繁体   English

调用SQL过程:SQL异常 - 代码:6550 ORA-06550

[英]Calling SQL Procedure: SQL exception - code: 6550 ORA-06550

Trying to call SQL procedure: 试图调用SQL过程:

PROCEDURE Incident_inqr
(MSISDN IN VARCHAR2
, Topic IN varchar2
,Incident_id IN varchar2 default '20120401' 
, RESULT OUT number
);

java JDBC string: java JDBC字符串:

SQL command: begin ? := SMASTER.SERVICE.Incident_inqr ( '9308000050','6345_NN','20120401', ?); end;

the error (I'm getting it in Russian): 错误(我用俄语得到):

SQL exception - code: 6550 ORA-06550: Строка 1, столбец 13: PLS-00222: функция с именем 'INCIDENT_INQR' не существует в этой области действия ORA-06550: Строка 1, столбец 7: PL/SQL: Statement ignored SQL异常 - 代码:6550 ORA-06550:Строка1,столбец13:PLS-00222:функциясименем'INCIDENT_INQR'несуществуетвэтойобластидействияORA-06550:Строка1,столбец7:PL / SQL:语句被忽略

translated: 翻译:

SQL exception - code: 6550 ORA-06550: line 1, column 13: PLS-00222: function called 'INCIDENT_INQR' does not exist in this action area ORA-06550: line 1, column 7: PL / SQL: Statement ignored SQL异常 - 代码:6550 ORA-06550:第1行,第13列:PLS-00222:此操作区域中不存在名为'INCIDENT_INQR'的函数ORA-06550:第1行第7列:PL / SQL:语句被忽略

output ? 输出? registration: 注册:

cs.registerOutParameter(1, oracle.jdbc.driver.OracleTypes.VARCHAR);
cs.registerOutParameter(2, oracle.jdbc.driver.OracleTypes.NUMBER);

Incident_inqr is a procedure. Incident_inqr是一个过程。 So it has no return value but just the out parameter. 所以它没有返回值,只有out参数。

The proper way to call it thus is: 因此调用它的正确方法是:

begin SMASTER.SERVICE.Incident_inqr ( '9308000050','6345_NN','20120401', ?); end;

... ...

cs.registerOutParameter(1, oracle.jdbc.driver.OracleTypes.NUMBER);

Furthermore, the procedure needs to be part of a package called 'SERVICE' in the schema / belonging to the user SMASTER . 此外,该过程需要是模式/属于用户SMASTER名为“SERVICE”的包的一部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 java.sql.SQLException: ORA-06550: 从 java 代码调用过程后 - java.sql.SQLException: ORA-06550: after calling procedure from java code java.sql.SQLException:ORA-06550 - java.sql.SQLException: ORA-06550 在Oracle上调用存储过程会引发ORA-06550异常 - Calling stored procedures on Oracle throws ORA-06550 exception JDBC-从JAVA调用PLSQL会给出Java.sql.SQLException:ORA-06550 - JDBC - Calling PLSQL from JAVA gives Java.sql.SQLException: ORA-06550 Java语言-java.sql.SQLException:ORA-06550 - Java Language - java.sql.SQLException: ORA-06550 尝试从Java代码调用存储的Oracle过程时,我得到ORA-06550 - I'm getting ORA-06550 when trying to call a stored Oracle procedure from Java code java.sql.SQLException:ORA-06550:第1行第13列:授予用户对EXECUTE包的权限后 - java.sql.SQLException: ORA-06550: line 1, column 13: After granting user permission to EXECUTE package 永久性 ORA-06550 错误,使用 jdbc 从 java 应用程序调用存储的 function - Permanent ORA-06550 error, calling stored function from java application using jdbc 引起:java.sql.SQLException:ORA-06550:第 1 行,第 7 列:PLS-00306:ZDBC11CAA5BDA99F77E6FB4DABD_SPE_FA 7 调用中的 ZDBC11CAA5BDA99F77E6FB4DABD8SPE_7 的错误编号或类型 - Caused by: java.sql.SQLException: ORA-06550: line 1, column 7: PLS-00306: wrong number or types of arguments in call to 'PR_SP_FAHMI' ORA-06550 第 2 行,第 44 列:PLS-00103: 遇到符号“文件结束” - ORA-06550 line 2, column 44:PLS-00103: Encountered the symbol "end-of-file"
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM