0 SQL类型
a) DML(Data Manipulation Lanuage 数据操作语言): select insert update delete
b) DDL(Data Definition Language 数据定义语言): create/alter/drop/truncate table;
create/drop view/sequence/index/synonym
c) DCL(Data Control Language 数据控制语言): commit rollback
1 基础概念
delete 和 truncate的区别:
a) delete逐条删除, truncate先摧毁表,在按照原来结构重建
b) delete是DML类型操作(可以回滚) , truncate 是DDL类型操作(不可以回滚)
c) delete操作不会释放表空间,原来有数据时多大执行delete后还是多大, truncate会释放表空间
d) delete会产生碎片,truncate不会
事务:
a) 起始于DML语句
b) 结束于提交: 显示-->commit
隐式-->1 正常退出exit 2 DDL语句(默认自带隐式提交)
回滚: 显示-->rollback
隐式-->停电,宕机,非正常退出
看如下示例,理解下回滚:
create table testsavepoint (tid number,tname varchar2(20));
insert into testsavepoint values(1,'Tom');
insert into testsavepoint values(2,'Mary');
savepoint a;
insert into testsavepoint values(3,'Moke');
select * from testsavepoint;
得到记录:
TID TNAME
---------- --------------------
1 Tom
2 Mary
3 Moke
rollback to savepoint a; 回滚到设置点
select * from testsavepoint;
TID TNAME
---------- --------------------
1 Tom
2 Mary
commit;
事务隔离级别:
隔离级别 | 描述 | 问题 |
read uncommitted读未提交数据 |
允许事务读取未被其他事务提交的变更
|
脏读/不可重复读/幻读的问题都会出现 |
read committed读已提交数据 | 事务只能读取被其他事务提交的变更 |
避免了脏读 不可重复读/幻读会出现 |
repeatable read可重复读 | 确保事务可以多次从一个字段中读取相同数值,在这个事务持续期间,禁止其他事务对此字段进行更新 |
避免了脏读/不可重复读 幻读会出现 |
serializable 串行化 | 确保事务可以从一个表中读取相同的行,在这个事务持续期间,禁止其他事务对此字段进行插入,更新,删除 |
性能低下 规避了所有问题 |
mysql支持以上所有隔离级别,默认的隔离级别为: repeatable read可重复读
oracle 支持2种离级别,read committed 和 serializable, 默认隔离级别为: read committed
事务分类两大类:
a) 本地事务 (常见开发中大多数都是本地事务)
eg:
try{
扣费
加费
提交
}catch(Exception e){回滚}
b) 全局事务 (JTA: java transaction api 这套java技术支持全局事务)
try{
扣费
加费
发送短信/邮件 (非数据库业务)
提交
}catch(Exception e){回滚}
相关推荐
这份文档"Oracle数据库基础知识_ISSUE1.0.doc"旨在介绍Oracle数据库的基础知识,帮助初学者理解和掌握Oracle数据库的核心概念。 课程说明部分可能包含课程的目标、教学方法以及相关资料的提供,为学习者提供了整体...
`oracle_总结`标签提示,这份资料可能是对Oracle数据库使用和管理的关键知识点的汇总,可能包括表的创建、索引的使用、事务管理、视图的创建与应用、数据库备份与恢复策略等。数据库性能优化也是Oracle管理的重要...
以下是一些关于Oracle PL/SQL的基础知识点: 1. **变量与数据类型**:PL/SQL支持多种数据类型,包括数值类型(如NUMBER)、字符类型(如VARCHAR2、CHAR)、日期时间类型(如DATE)以及布尔类型(BOOLEAN)等。声明...
标签中的"oracle_ppt"可能代表压缩包中含有关于Oracle的PowerPoint演示文稿,这些PPT可能包含了Oracle数据库的基础知识、高级特性、最佳实践等内容,适合学习和培训。"oracle_projects"和"plsql_ppt"、"plsql_...
安装过程中需要配置Oracle Clusterware,这是Oracle RAC的基础,提供集群管理、故障检测和恢复等功能。接着,要安装Grid Infrastructure,它包含了Clusterware和Automatic Storage Management (ASM),用于管理磁盘...
### Oracle基础知识总结初学者必备 Oracle数据库作为一款广泛使用的数据库管理系统,在企业和开发领域扮演着重要的角色。对于初学者而言,掌握其基础知识是非常必要的。本文将根据提供的内容进行深入解析,并结合...
以下是一些Oracle基础知识的详细解释: 1. SQL*Plus工具:这是Oracle数据库管理员(DBA)和开发人员常用的命令行界面,用于执行SQL查询和其他数据库操作。`set linesize` 和 `set pagesize` 用于调整输出的行宽和每...
本文将深入探讨Oracle基础知识,包括其架构、安装、数据类型、SQL语句、表空间管理以及备份与恢复策略。 一、Oracle数据库架构 Oracle数据库采用客户/服务器(Client/Server)模式,由多个组件构成。主要包括数据库...
总的来说,这个压缩包提供了一套完整的Oracle数据库学习资源,涵盖了从基础到进阶的知识点,适合数据库管理员(DBA)、开发人员以及其他需要与Oracle数据库打交道的专业人士。通过深入学习和实践这些内容,不仅可以...
1. **Oracle RAC基础知识**:RAC由多个节点(服务器)组成,每个节点都连接到共享的存储系统。数据在所有节点间共享,任何节点都可以处理数据库请求,实现了服务的连续性和高性能。 2. **RAC的构建**:构建RAC涉及...
在“Oracle-SQL.rar”这个压缩包中,包含了一份名为“Oracle SQL.ppt”的文件,这可能是一个PowerPoint演示文稿,用于详细讲解Oracle数据库的基础知识和SQL语言的使用。下面,我们将深入探讨一些Oracle SQL的基础...
Oracle数据库的基础知识主要涵盖数据库的逻辑结构和物理结构,其中数据块、区和段是重要的存储管理概念。在第八讲中,我们重点关注了这些概念及其相互关系。 首先,数据块是Oracle数据库的最小逻辑存储单位,其大小...
以下将详细讲解Oracle基础知识,包括数据库管理、表的创建与维护、SQL查询技巧、权限管理以及PL/SQL编程等方面。 1. **Oracle数据库优势** Oracle数据库因其高性能、高可用性和安全性而受到青睐。它支持大规模并发...
这份"Oracle_note.rar"压缩包包含的"数据库开发Oracle学习笔记"是为初学者准备的一份详细教程,旨在帮助读者快速掌握Oracle的基础知识和操作技能。 1. **Oracle数据库概述** Oracle数据库系统是由美国甲骨文公司...
6. **性能优化**:在高并发环境下,Oracle数据库的性能优化至关重要。这可能涉及到索引优化、查询优化、分区策略、缓存管理等技术,以保证ATM机的响应速度和用户体验。 7. **备份与恢复**:为了防止数据丢失,...
综上所述,"ppt.rar_delphi oracle_delphi ppt_oracle"这个压缩包内容可能涵盖了Delphi环境下Oracle数据库的开发基础、高级特性和最佳实践,对于学习和提升Delphi与Oracle数据库的集成应用能力大有裨益。通过阅读PPT...
了解SQL的基本语法,如SELECT语句、JOIN操作、子查询以及事务处理,是成为Oracle开发人员的基础。此外,理解Oracle的数据模型,包括实体、关系、属性和键,有助于设计高效且可靠的数据库结构。 数据库架构方面,...
对于开发者来说,理解其数据存储、查询以及事务处理机制是必备的基础知识。 接着,我们探讨Java编程在数据库操作中的作用。Java通过JDBC(Java Database Connectivity)API与各种数据库进行交互。JDBC提供了一套...
本课件主要讲解了Oracle数据库的联机重做日志文件及其相关概念,包括归档日志文件,旨在帮助学习者掌握数据库恢复的基础知识。 联机重做日志文件的作用在于记录数据库的所有事务操作,即使数据库因硬件故障或操作...
Oracle基础知识概述 Oracle基础知识概述是一份关于Oracle数据库的详细介绍,涵盖了数据库概念、Oracle发展史、Oracle基础知识、安装和卸载等方面的内容。 一、数据库概念 数据库是一个集合了大量数据的仓库,具有...