Java如何实现对存储过程的调用:
1、不带输出参数的
create procedure getsum@n int =0<--此处为参数-->asdeclare @sum int<--定义变量-->declare @i intset @sum=0set @i=0while @i<=@n beginset @sum=@sum+@iset @i=@i+1endprint 'the sum is '+ltrim(rtrim(str(@sum)))
在线视频教程推荐:java学习
JAVA可以调用 但是在JAVA程序却不能去显示该存储过程的结果,因为上面的存储过程的参数类型int传递方式是in(按值)方式。
import java.sql.*;public class ProcedureTest{ public static void main(String args[]) throws Exception{ //加载驱动 DriverManager.registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver()); //获得连接 Connection conn=DriverManager.getConnection("jdbc:odbc:mydata","sa",""); //创建存储过程的对象 CallableStatement c=conn.prepareCall("{call getsum(?)}"); //给存储过程的参数设置值 c.setInt(1,100); //将第一个参数的值设置成100 //执行存储过程 c.execute(); conn.close(); }}
2、带输出参数的
alter procedure getsum@n int =0,@result int outputasdeclare @sum intdeclare @i intset @sum=0set @i=0while @i<=@n beginset @sum=@sum+@iset @i=@i+1endset @result=@sum
java中调用:
相关文章教程推荐:java编程入门