赞
踩
CSDN话题挑战赛第2期
参赛话题:学习笔记
Oracle基础知识整理:C站下载链接
1 Oracle 基础知识 | 2 Oracle 安装(附详细安装操作手册) | 3 Oracle 基本使用 |
---|---|---|
4 Oracle 用户管理 | 6 -1Oracle 表的管理-创建修改表 | 6-2 Oracle 表的管理-表查询 |
6-3 Oracle 表的管理-表复杂查询 | 6-4 Oracle表复杂查询 -多表查询 | 6-5 Oracle表复杂查询 -子查询 |
6-6 Oracle表复杂查询 -合并查询-增删改数据 | 11 | 12 |
1)配置数据源:控制面板—》管理工具—》数据源(ODBC)—》用户DNS选项卡中-》添加—》Oracle in OraDb10g_home1—》完成-》Data Source Name:testOra ;TNS Service Name:orcl->点击TestConnection按钮输入用户名和密码先测试一下-》OK—》确定
2)新建项目
3)添加try catch,代码如下
import java.sql.*; try { //加载驱动 Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver"); //数据库连接 Connection conn= DriverManager.getConnection ("jdbc:odbc:testOra","scott","tigger"); //下面和sqlserver是一样的 Statement st=conn.createStatement(); ResultSet rs=st.executeQuery("select * from emp"); while (rs.next()) { System.out.println("用户名:"+ rs.getString("ename")); } } catch (Exception e) { e.printStackTrace(); }
Class.forname ("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getconnection("jdbc:oracle:thin:@ruanjian-whq:1521:oracle","scott","tigger");
使用特定格式插入日期值
·使用 to_date
函数
请大家思考:如何插入列带有日期的表,并按照年-月-日的格式插入
insert into users(2,'小红',to_date('1988-12-2','yyyy-mm-dd'));
insert into users(2,'小红',to_date('1988/12/2','yyyy/mm/dd'));
·介绍
当使用values
字句时,一次只能插入一行数据,当使用子查询插入数据时,一条insert
语句可以插入大量的数据,当处理行迁移或者装载外部表的数据到数据库时,可以使用子查询来插入数据。
·介绍
使用update
语句更新数据时,既可以使用表达式或者数值直接修改数据,也可以使用子查询修改数据
希望员工scott 的岗位、工资、补助与smith员工一样
update emp set (job,sal,comm)=(select job,sal,comm from emp where ename='SMITH') where ename='SCOTT';
**事务:**用于保证数据的一致性,它由一组相关的dml
(数据操作语言:增加、删除、修改)语句组成,改组的dml
语句要么全部成功,要么全部失败。
如:网上转账就是典型的要用事务来处理,用以保证数据的一致性。
当执行一个事务操作时(dml
语句),oracle会在被作用的表上加锁,防止其它用户修改表的结构,这里对我们用户来讲是非常重要的。
使用commit
语句可以提交事务,当执行了commit
语句之后,会确认事务的变化,结束事务、删除保存点、释放锁,当使用commit
语句结束事务之后,其它会话将可以查看到事务变化后的新数据。
在介绍回退事务之前,我们先介绍一下保存点(savepoint
)的概念和作用。保存点是事务中的一个点,用于取消部分事务,当结束事务时,会自动的删除该事务所定义的所有保存点。当执行rollback
时,通过指定保存点可以回退到指定的点。
保存点的个数没有限制
回退事务必须在提交(commit
)事务之前
1)设置保存点
savepoint a
2)取消部分事务
rollback to a
3)取消全部事务
rollback
在java操作数据库时,为了保证数据的一致性,比如转账操作(1)从一个账户减掉10 ( 2 )在另一个账户上加入 10 (2)在另一个账户上加入10 (2)在另一个账户上加入10,我们看如何使用事务
conn.setAutoCommit(false); //设置事务不能默认提交
conn.commit(); //提交事务 //在所有操作结束后一起提交
注意:rollback()
需要添加try
、catch
conn.rollback(); //如果发生异常,事务回滚
只读事务是指只允许执行查询的操作,而不允许执行任何其他dml操作的事务,使用只读事务可以确保用户只能取得某时间点的数据。假定机票代售点每天18点开始统计今天的销售情况,这时可以使用只读事务,在设置了只读事务后,尽管其他会话可能会提交新的事务,但是只读事务将不会取得最新数据的变化,从而可以保证取得特定时间点的数据信息。
set transaction read only
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。