java mysql存储过程输出参数问题
存储过程:
CREATE PROCEDURE mydata.p26(OUT para INT)
BEGIN
DECLARE b INT ;
SET b = 1;
SET para = b;
END;
=============================================
java中调用:
CallableStatement cs=con.prepareCall("{call mydata.p26(?)}");
cs.registerOutParameter(1,Types.INTEGER);
cs.execute();
=================================
运行报错:
java.sql.SQLException: Parameter index of 1 is out of range (1, 0)
at com.mysql.jdbc.CallableStatement.checkParameterIndexBounds(CallableStatement.java:1001)
at com.mysql.jdbc.CallableStatement.checkIsOutputParam(CallableStatement.java:970)
at com.mysql.jdbc.CallableStatement.registerOutParameter(CallableStatement.java:863)
at oa.jinghua.zh.procedure.CallProcedure.generateProcedure1(CallProcedure.java:262)
at oa.jinghua.zh.procedure.CallProcedure.main(CallProcedure.java:198)
CREATE PROCEDURE mydata.p26(OUT para INT)
BEGIN
DECLARE b INT ;
SET b = 1;
SET para = b;
END;
=============================================
java中调用:
CallableStatement cs=con.prepareCall("{call mydata.p26(?)}");
cs.registerOutParameter(1,Types.INTEGER);
cs.execute();
=================================
运行报错:
java.sql.SQLException: Parameter index of 1 is out of range (1, 0)
at com.mysql.jdbc.CallableStatement.checkParameterIndexBounds(CallableStatement.java:1001)
at com.mysql.jdbc.CallableStatement.checkIsOutputParam(CallableStatement.java:970)
at com.mysql.jdbc.CallableStatement.registerOutParameter(CallableStatement.java:863)
at oa.jinghua.zh.procedure.CallProcedure.generateProcedure1(CallProcedure.java:262)
at oa.jinghua.zh.procedure.CallProcedure.main(CallProcedure.java:198)
...全文
相关推荐
jdbc调用mysql存储过程实现代码
**其他相关知识点** - **JDBC连接MySQL的常见问题**:可能遇到的连接问题包括连接超时、认证失败、URL格式错误等,需要检查配置信息是否正确。
Java调用MySQL存储过程实战指南
MySQL存储过程是一组预编译的SQL语句集合,存储在数据库中,可以通过指定名称进行调用。它不仅提升了代码的复用性,还增强了数据库操作的安全性与性能。与传统的SQL语句相比,存储过程在执行效率上更具优势,尤其适用于处理复杂的业务逻辑。其结构通常包括定义、声明、执行和结束几个部分,允许参数传入与返回,支持条件判断与循环控制。通过将业务逻辑下沉至数据库层,减少了应用与数据库之间的通信开销。此外,存储过程具备良好的封装性和权限控制能力,有助于提升系统的可维护性与安全性。
java调用存储过程(含out参数)
在Java编程中,调用数据库的存储过程是常见的任务,特别是在处理复杂的业务逻辑或需要高效数据操作时。本文将详细讲解如何在Java中调用含有`OUT`参数的存储过程,帮助开发者解决这类问题。
Java Spring动态生成Mysql存储过程详解
Java Spring动态生成Mysql存储过程详解Java Spring是一种流行的Java框架,用于构建企业级应用程序。Mysql是目前最流行的关系数据库管理系统之一。
Java调用存储过程的2种方法
### Java调用存储过程的两种方法在Java中调用数据库中的存储过程是常见的操作之一,这不仅可以提高程序性能和代码可维护性,还可以更好地利用数据库的功能。


