JDBC调用存储过程,以及存储过程 事务的使用.....
在JDBC中调用存储过程 首先就要在数据库中存在 要调用的过程 ,存储过程是一组SQL语句的集合,我们吧实现某一功能的 SQL语句集合在一起来使用,方便了用户,不光是这样,存储过程可以预编译,也就是说只要调用了一次存储过程,那么下次在调用存储过程的时候 就不需要进行再次编译了 。提高了 数据库访问的效率 。。
在 SQL SERVER20008 中创建存储过程 语法如下
Create Procedure 过程名字(@parameter1 int ,@parameter2 char(10) .........) as <SQL命令>
例子:
Create Procedure a as select * from info // 创建了存储过程 a 表示查询 info表的所有数据
在 JDBC中调用 方法 。。。
Connection c =DriverManager.getConnection("jdbc:odbc:datasoure") ; //连接数据库
CallableStatement m=c.prepareCalle("call p(?,?)") ; //创建CallableStatement对象 并传递存储过程调用 的SQL执行语句 ?表示 JDBC存储过程参数的通用格式
m.setString(1,"one");
m.setString(2."two"); //分别设置第一个参数?和第二个参数?的值
然后调用 m.executeUpdate() ;//执行存储过程
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
在JDBC操作中 我们还记得 Connection的 commit方法 吗? 这个方法 是提交SQL命令 ,默认状态下是自动提交 .也就是说 不用我们 显示的去调用这个方法来提交SQL命 令 。
在一般的 SQL 查询 更新删除 等操作的时候 我们不用去设置它的状态,自动提交就行 。但是在事务中,我们不得不用到 commit方法手动提交 ,关于什么事务 下面我详细说 明 ....
事务?其实就是几个SQL语句的组合 ,但是这个组合有特性 ,就是他们有原子性?什么是原子性呢 ,就是 事务中的 SQL操作要么都执行 ,要么 一个也不执行 ,这就是事务的概念 , 什么时候用到事务呢 ,比如说 我们 在处理银行转账服务的同时 是一个账号 扣钱 一个账户加钱, 这两个操作只能同时进行 ,但却不能一个执行而另一个不执行,事务的用处在银行转账得到了很好的体现。。。。。。
事务的处理 我们就不能用自动提交模式了 ,
1、我们需要调用 Connection类的 setAutoCommit(false)方法设置模式为手动提交,设置了这个模式之后我们调用 executeUpdate等方法执行的SQL命令都不会提交
除非我们显示调用了Connection类的 commit()方法 。
2、如果在事务处理当中 某一条件不符合的时候 我们就可以调用 Connection类的 rollBack()函数回滚事务 ,取消之前所作的一切事务操作 ,
转载于:https://www.cnblogs.com/yuedongwei/archive/2011/12/02/4145575.html
JDBC调用存储过程,以及存储过程 事务的使用.....相关推荐
- jdbc批量调用oracle存储过程,oracle学习笔记(二十三)——JDBC调用存储过程以及批量操作...
jdbc调用存储过程 使用并获得out模式的参数返回值 //存储过程为sum_sal(deptno department.deptno%type,sum in out number) Callable ...
- Oracle 存储过程,Hibernate 调用存储过程,JDBC调用存储过程,Oracle 动态SQL
Oracle 存储过程学习 目录 Oracle 存储过程........................................................................ ...
- mysql jdbc 创建存储过程_mysql JDBC 调用存储过程
与oracle不同,mysql不支持匿名块,如果需要写过程语句,则必需定义存储过程.如果你会oracle的存储过程,那么mysql的存储过程也很简单了. 一.创建存储过程 create procedu ...
- jdbc调用存储过程的方法
----------------------------jdbc调用存储过程的方法--------------------------------------------------- private ...
- JDBC对MySQL数据库存储过程的调用
一.MySQL数据库存储过程: 1.什么是存储过程 存储过程(英文:Stored Procedure)是在大型数据库系统中,为了完毕特定功能而编写的一组的SQL语句集.存储过程经编译存储在数据库中.用 ...
- DM8 jdbc调用存储过程传参list<实体类>
DM8 jdbc调用存储过程传参list<实体类> 一.前提 jdbc的连接串参数prepareOptimize,表示是否对预编译SQL做优化,取值true/false,默认false不开 ...
- 创建oracle的存储过程,以及通过JDBC调用该存储过程
一.创建存储过程 create or replace procedure mwp_jgdx_dxxm_batchcopy ( srcxmid in varchar, --项目ID字符串 bbjlid ...
- 不是操作系统的是JAVA_在Jdbc中可以调用数据库的存储过程的接口是( )。
[多选题]下面属于AWT事件的高级事件的是(). [其它]1.1000字的故事梗概.是整个电视剧的总体梗概. 2.列出每条情节线的事件 3.核心人物的人物小传,每个人物500字 4.以Word附件的形 ...
- jdbc调用存储过程
jdbc调用存储过程 使用mysql数据库 在mysql中选择好数据库(我的mysql版本是8.0.25) 创建一个存储过程 # 在MySQL中每行命令都是用":"结尾,回车后自动 ...
- 使用jdbc调用存储过程
存储过程是指保存在数据库并在数据库端执行的程序.你可以使用特殊的语法在Java类中通过JDBC调用存储过程.在调用时,存储过程的名称及指定的参数通过JDBC连接发送给DBMS,执行存储过程并通过连接( ...
最新文章
- python使用fpdf生成发票格式的pdf文件包含:文字、图片logo、表格、条形码等;
- 全球有多少 C/C++ 程序员?Java 和 Python 又有多少?
- windows下带超时的telnet探测IP和端口
- TorgoiseGit配置ssh密钥
- 基于事件驱动架构构建微服务第14部分:查询API
- 移动流量转赠给好友_私域流量的五大认知误区
- MySQL实战—更新过程
- dedecms后台崩溃或者后台访问慢的解决方法
- 医学方面的创业计划书_医学生创业计划书
- visio2010画图
- 王者荣耀ai视频战报ai剪辑生成方法
- 使用 LwIP TCP/IP 栈,在 STM32Cube 上开发应用
- 百度为手游盛世添把火
- 法力无边的stage-0
- 一级计算机考试报名 全国计算机一级报名考试入口官网
- 【数据库】MySQL 加锁处理分析
- Selenium WebDriver(1)——入门篇
- 如何选相应的尺寸码数
- 今日学习在线编程题:余数之和
- Windows软件之步骤记录器
热门文章
- 中国高校改名发展史:改了名,我们就是一流大学了
- ACL2020 | 什么时候值得用BERT上下文嵌入
- 用Siamese和Dual BERT来做多源文本分类
- 谈谈这一两年的成长 | 读研一年半,靠学习收入四十多万 !
- ともだちいじょう、こいびとみまん
- PyTorch学习—9.模型容器与AlexNet构建
- 基于DEAP库的python进化算法-3.简单遗传算法的实现
- Flink+Alink,当大数据遇见机器学习! 博文视点Broadview 前天
- 与TensorFlow类似的项目有哪些?TensorFlow的优缺点是什么?
- .NET的托管堆中是否可能出现内存泄漏现象