存储过程如何捕获java出错,然后回滚,不做提交
目前有一个java程序,调用存储过程在数据库中写入一些数据,然后将这些数据传输给另外一个程序,目前不管java连接成功或是不成功,该存储过程都会写入数据!
目前需要在java连接不成功的情况下,有何方法能使存储过程自动回滚。
(当然也可先判断连接是否连接成功再调用存储过程,除了这种方法还有什么方法)
你的连接是指连接数据库?
你的java连接程序和call存储过程是两个线程?
如果是一个程序怎么能不连接就call的?
如果是两个线程应当是要先判断的,否则call之前就失败了
把整个过程控制在一个事物里面,存储过程写入数据后,如果java连接不成功,就抛出异常,这样数据就会回滚了。
把store procedure里面的commit去掉,在java里面调用Connection的commit().
不过,如果其他程序已经使用了这个store procedure的话,就会影响到这些程序了...
连接指的不是数据库,而是与另外一个程序的通讯
不好意思,小弟对java了解不是很深
把整个过程控制在一个事物里面,存储过程写入数据后,如果java连接不成功,就抛出异常,这样数据就会回滚了--调用了存储过程,存储过程有自己的内部事务(有begin tran .....commit),java还能控制其回滚吗?
把store procedure里面的commit去掉,在java里面调用Connection的commit().--这个目前这个程序确实有很多并发操作,这个是行不通的。
谢谢楼上各位指点。
存储过程捕捉java的异常。。。
关键在于存储过程读入入参以后再运行时就不好与外界交流了,没办法读变量判断是否回滚
我还是只想到先判断连接是否连接成功
继续关注~~
可以再写一个存储过程,当连接不成功的时候调用,
相关问答:
通过java程序,先编译c程序,如出现错误,提示C程序中的错误,编译成功就运行,显示C的运行结果,最好把C的运行时间和内存等都显示出来
各位大哥大姐帮帮忙,小弟感激不尽!
用java的进程类试试
我给你转 ......
我想做够购物车用session 但是不知道怎么获取购买数量 谁有具体的代码吗 希望能割舍
下面是购物车的核心代码
有了这个 就应该能够做出来吧
Java code:
public void doPost(HttpServletRequest reque ......
字符流的读和写最终在底层都是通过字节流来完成的吗? 读写文本文件字符流应该就可以了吧。。
各位大哥大姐帮帮忙阿
Java流包括字节流和字符流,字节流通过IO设备以字节数据的方式读入,而字符流则是通过字节流 ......
想学习下J2SE下的MVC架构。希望大家推荐点资源给我,最好有MVC实例的。
J2SE的不会
J2EE的到是知道点,你先从JSP+servlet+javaBean学习吧,掌握了之后,再学习学习struts!
引用
J2SE的不会
J2EE的 ......