码迷,mamicode.com
首页 > 数据库 > 详细

java 调用mysql的存储过程(简单示例)

时间:2016-06-20 23:46:53      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:

首先我在mysql的test数据库里定义了一个student表:

create table student4(

id   int   primary key,

sanme char(5)

);

插入几个数据做测试用:

inset into student values(1,‘mayi‘);

inset into student values(2,‘mayi‘);

inset into student values(3,‘mayi‘);

 

建立存储过程:

in 型:

delimiter //

create procedure demo_in(in p_in int)

begin

select p_in;

set p_in=2;

select p_in;

end;

//

delimiter ;

 

 

java测试代码:

 CallableStatement callstatement = conn.prepareCall("call demo_in(?)");//conn,数据库连接


 callstatement.setInt(1, 1);//设置第一个参数


callstatement.execute();//执行

 

conn.close();//关闭连接

 

 

 

out型:

 

delimiter //

create procedure demo_out(out s int)

begin

select count(*) into s from student;

end

//

delimiter ;

 

java测试代码:

   CallableStatement callstatement = conn.prepareCall("call demo_out(?)");


   callstatement.registerOutParameter(1, java.sql.Types.INTEGER);//注册存储过程的out型参数类型;使用之前必须注册;


   callstatement.execute();//执行


   System.out.println(callstatement.getInt(1));//获得存储过程的输出参数


   conn.close();//关闭连接

 

java 调用mysql的存储过程(简单示例)

标签:

原文地址:http://www.cnblogs.com/chen-lhx/p/5602137.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!