文档章节

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

蜀山下的鱼
 蜀山下的鱼
发布于 2015/04/29 00:39
字数 280
阅读 19
收藏 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();//关闭连接


总结:  先在数据库中建立存储过程,然后获得数据库连接conn后,生成CallableStatement对象,执行相应的操作。

看过的几篇文章:保留下来,下次记忆模糊了,在复习一下!

Java对存储过程的调用方法

java执行存储过程

 

本文转载自:http://blog.csdn.net/caiwenfeng_for_23/article/details/8472559

蜀山下的鱼
粉丝 9
博文 405
码字总数 0
作品 0
广州
高级程序员
私信 提问
Spring JdbcTemplate方法详解

qldbFunctionSql); String createHsqldbProcedureSql = "CREATE PROCEDURE PROCEDURE_TEST" + "(INOUT inOutName VARCHAR(100), OUT outId INT) " + "MODIFIES SQL DATA " + "BEGIN ATOMIC "......

The-Start
2013/12/18
0
0
spring中的JdbcTemplate简单记录

JdbcTemplate主要提供以下五类方法: execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句; update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate...

刘谱_smile
2015/07/15
0
0
JAVA客户端传递对象数组到Oracle存储过程做大数据量插入

最近在项目中用到了JAVA客户端传递对象数组到Oracle存储过程做大数据量插入,比如10万级别. 下面做一个插入10万条记录的示例步骤,,为了容易理解,表的结果很简单. 1,假设表结构如下: 2,在数据库...

晨曦之光
2012/04/25
472
0
Spring JdbcTemplate方法详解

JdbcTemplate主要提供以下五类方法: execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句; update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate...

zqcju
2014/06/13
0
6
java实现调用Mysql存储过程分析代码

数据库的测试代码如下 : 1、新建表test,sql代码如下: create table test(field1 int not null)TYPE=MyISAM ;insert into test(field1) values(1); 2、删除已存在的存储过程,代码如下: de...

afreon
2015/06/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java编程学习-Java虚拟机(JVM)以及跨平台原理

相信大家已经了解到Java具有跨平台的特性,可以“一次编译,到处运行”,在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的。 那么,跨平台是怎样实现的呢?这...

Java领航员
16分钟前
0
0
学JFinal不迷路,JFinal优质资源列表(欢迎反馈更新)

学JFinal不迷路,记录一下JFinal相关的资源、产品、讲师等信息(所有信息排名不分先后)。 一、相关站点: 1、JFinal官网-问答、分享、文档、交流、俱乐部 http://www.jfinal.com 2 、JFina...

山东-小木
20分钟前
0
0
项目学习(2)-order-job

在当前的系统中,因为并发量并不高,服务之间发起异步请求或者异步调用时,没有使用到消息中间件。 而是在各个服务(子系统)的数据库中,创建了event_queue事件对列表和event_handler事件处...

太猪-YJ
28分钟前
0
0
gradle grovvy中的闭包

1. 无参数的闭包 //这b1就是一个闭包def b1={ println "hello b1"}//定义方法,包含闭包类型的参数def method1(Closure closure){closure()}//执行method1method1(b1) 执行结果 ...

edison_kwok
今天
3
0
基于Spring Boot + Dubbo的全链路日志追踪(一)

一、 概要 当前公司后端整体架构为:Spring Boot + Dubbo。由于早期项目进度等原因,对日志这块没有统一的规范,基本上是每个项目自己管自己的日志。这也对后面的问题排查带来了很大的困难,...

明天以后
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部