oracle 事务简介,锁的概念,java访问数据库注意事项
java链接oracle和连接其他数据库一样有两种方式:
1 桥接 jdbc-obdc
2 jbdc
insert语句一次插入大量数据
insert into table (列1,列2,列3) select 列1,列2,列3 from table1;
update语句在更新数据时直接修改数据(oracle特有的)
update table set(列1,列2,列3) = (select 列1,列2,列3, from table1 where.....) where ..... ;
用查询结果创建新表
create table table2 (列1,列2,列3) as select 列11,列22,列33 from table;
oracle中的事务处理
1 锁的概念
2 保存点的使用:
在处理当前事务过程中,还没提交事务时,可以回滚到保存点
savepoint point1;rollback to point1;
提交命令是:commit;
特别指出:每次退出数据库的时候数据库都会自动提交,没有提交相当于内容在变但是没有保存。
3 在java中使用事务
在java中访问数据库时,每执行一条语句就会提交一次,如果多条语句执行过程中,发生错误,会导致表被改变
,并且没按照程序员的意愿发生改变,这时需要利用事务的原理设计程序。
import java.sql.*; public class Demo001 { public static void main(String[] args) {
Connection ct = null;
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
ct = DriverManager.getConnection ("jdbc:oracle:thin:@localhost:1521:myoracle1","scott","tiger");
Statement st = ct.createStatement(); //设置ct不自动提交事务
ct.setAutoCommit(false); st.executeUpdate("update table set a1 = a1 + 100 where name = 'sss' "); int w = 1/0;//故意制作的异常 st.executeUpdate("update table set a2 = a2 - 100 where name = 'sss' "); ct.commit();
ct.close();
st.close(); }catch(Exception e){
27 try {
//一旦发生异常则回滚
ct.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
}
}
}
oracle 事务简介,锁的概念,java访问数据库注意事项的更多相关文章
- Oracle事务与锁
Oracle事务与锁 2017-12-13 目录 1 数据库事务概括 1.1 事务定义 1.2 事务生命周期 1.3 事物的特性 1.4 死锁2 事务相关语句 2.1 事务相关语句概括 2 ...
- Oracle事务与锁 知识点摘记
事务:事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml语句要么全部成功要么全部失败. 说明:一组SQL,一个逻辑工作单位,执行整体修改或者整体回退. 事务的相关概念: 1.事务的提 ...
- oracle事务和锁
数据库事务概括 1. 说明 一组SQL,一个逻辑工作单位,执行时整体修改或者整体回退. 2.事务相关概念 1)事务的提交和回滚:COMMIT/ROLLBACK 2)事务的开始和结束 开始事务:连接到数 ...
- oracle事务和锁(转)
If you use a SET TRANSACTION statement, then it must be the first statement in your transaction. How ...
- Oracle事务和锁机制
事务 1. 说明 一组SQL,一个逻辑工作单位,执行时整体修改或者整体回退. 2.事务相关概念 1)事务的提交和回滚:COMMIT/ROLLBACK 2)事务的开始和结束 开始事务:连接到数据库,执行 ...
- JavaSE学习总结(九)—— Java访问数据库(JDBC)
一.JDBC简介 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java ...
- Java访问数据库Mysql
一.概述 本文主要介绍Java接连数据库的基本方法和步骤,并对其中的几个要点进行简要说明. 二.数据库访问步骤 在Java中连接数据库进行的访问主要有以下几个步骤: 加载数据库驱动 注册数据库驱动 建 ...
- 三国武将查询系统 //Java 访问 数据库
import java.awt.*; import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event ...
- java 访问数据库公共类
package com.javaweb.mvc; import java.sql.*; /** * @author 公共数据访问类 * * Statement 和 PreparedStatement之 ...
随机推荐
- Android学习系列(22)--App主界面比较
本文算是一篇漫谈,谈一谈当前几个流行应用的主界面布局,找个经典的布局我们自己也来实现一个.不是为了追求到底有多难,而是为了明白我们确实需要这么做. 走个题,android的UI差异化市场依然很大,依然 ...
- Android onTouchEvent事件中onTouch方法返回值介绍
1.若return false说明没有成功执行onTouch事件,在执行完onTouch里面的代码之后,onTouch事件并没有结束.因此某些组件如Gallery会自动执行它所在view里onTouc ...
- 如何把本机Sql Sever数据库转移到虚拟主机sql数据库
不少站长的网站都是asp+access的网站 因为操作access数据库的网站非常简单,甚至你对数据库不懂都可以 但如果是mssql数据库的网站,有些新手朋友就不知道该怎么弄了 在这里给大家做个简 ...
- cloudera manager 及CDH卸载
记录用户数据路径 删除用户数据 中列出的用户数据路径 /var/lib/flume-ng /var/lib/hadoop* /var/lib/hue /var/lib/navigator /var/l ...
- js基础第七天
短信发送验证倒计时案例(常用) 关闭定时器clearInterval this 指向的是 事件的调用者 ,或者是函数的使用者. button 不可以用 disabled 不可用的意思 意思是变成灰色不 ...
- jquery 日期控件
控件官网: http://www.interidea.org/demo/icalendar.php#demohtml绑定控件 $("#startdate").icalendar({ ...
- PHP生成各种验证码和Ajax验证
网址:http://www.helloweba.com/view-blog-191.html 源码下载地址: http://files.cnblogs.com/h07061108/php%E9%AA% ...
- 为zend studio增加Extjs代码提示功能
http://blog.163.com/liuhaijun_83/blog/static/61175622201223114216786/ 需要将其中的http://www.spket.com/upd ...
- HW5.33
import java.util.Calendar; public class Solution { public static void main(String[] args) { long tot ...
- Visual Studio C++ Command Line
最近在Visual Studio 2012进行vp8的开发,之前一直都是在ubuntu上进行开发,关于编译链接的一些选项可直接在makefile中定义,比如vp8的头文件都放在include文件下面, ...