精品课件-oracle数据库实用技术-第5章
《oracle数据库培训》ppt课件
01
基本语法
包括变量声明、数据类型、运算符、表 达式等。
02
03
编程规范
建议遵循的命名规范、缩进规则、注 释方法等。
控制结构(条件语句、循环语句等)
条件语句
IF-THEN-ELSE语句,用于根据条件执行不 同的操作。
循环语句
LOOP、WHILE、FOR等循环结构,用于重 复执行某段代码。
顺序控制语句
云计算与大数据
Oracle数据库提供强大的数据分析 和挖掘功能,支持实时分析和历史数 据分析。
02
Oracle数据库体系结构
物理存储结构
数据文件
存储数据的物理文件,包括表、 索引等数据。
控制文件
记录数据库的物理结构信息,如 数据文件、日志文件的位置等。
日志文件
记录数据库的所有修改操作,用 于数据恢复。
优化案例
针对具体SQL语句,结合执行计划和系统资源情况,进行针对性优化。
系统参数调整建议
参数调整目标
根据系统实际情况,调整Oracle数据库参数,提高系统性能。
调整建议
调整内存参数,如SGA、PGA等,提高内存使用效率;调整磁盘I/O参数,提高磁盘读写 性能;调整网络参数,优化网络连接和传输性能;根据业务需求,调整其他相关参数。
理
01
Oracle数据库概述
Oracle数据库发展历程
计算机科学与技术——数据库系统原理
第一章数据库系统概述
本章学习重点:
1.数据库系统的三级模式结构
2.数据模型中概念层模型(E-R)模型域逻辑层模型(关系模型)
第一节数据库基本概念
一、数据(Data):是描述事物的符号记录,是指用物理符号记录下来的、可以鉴别的信息
包括数字、字母、文字、特殊字符组成的文本数据,也可以是图形、图像、动画、影像、声音、语言等多媒体数据。例如,日常生活和工作中使用的客户档案记录、商品销售记录等都是数据
二、数据库(Database,简称DB)
1.定义:是长期储存在计算机中的有组织的、可共享的(大量)数据集合
2.数据库中存储的数据具有永久存储、有组织和可共享三个基本特点
三、数据库管理系统(Data Management System,简称DBMS)
数据库管理系统产生的时期是20世纪60年代后期
DBMS必须具有将数据库从错误状态恢复到某一已知的正确状态的功能,这就是数据库的故障恢复
1.定义:是位于应用程序(用户)与操作系统之间的一层数据管理软件
2.主要功能
(1)数据定义功能:提供数据定义语言(DDL)定义数据库中的数据对象
例如:表、视图、存储过程、触发器等
(2)数据操纵功能:提供数据操纵语言(DML)操纵数据实现对数据库的基本操作
例如:查询、插入、删除和修改
(3)数据库的运行管理:保证数据的安全性(用户只能使用视图定义中的数据,而不能使用视图定义外的其它数据)、完整性(数据的正确性、有效性和相
容性,防止错误的数据进入数据库)、多用户对数据的并发使用以及发生故
障后的系统恢复
(4)数据库的建立和维护功能:创建数据库及对数据库空间的维护、数据库的备份与恢复功能、数据库的重组织功能和性能监视、分析等
oracle 压缩表语句
oracle 压缩表语句
(实用版)
目录
1.Oracle 压缩表语句概述
2.Oracle 压缩表语句的使用方法
3.Oracle 压缩表语句的优点
4.Oracle 压缩表语句的注意事项
正文
【Oracle 压缩表语句概述】
Oracle 压缩表语句是一种在 Oracle 数据库中对表进行压缩的技术,可以有效地减少表占用的存储空间,提高数据库性能。通过使用压缩表语句,可以将表中的数据进行压缩,从而节省磁盘空间,降低 I/O 操作的
次数,提高查询和写入操作的效率。
【Oracle 压缩表语句的使用方法】
在 Oracle 数据库中,可以使用 ALTER TABLE 语句对表进行压缩。
具体的使用方法如下:
```
ALTER TABLE <表名> COMPRESS;
```
在使用压缩表语句时,需要确保表空间中有足够的空间来存储压缩后的数据,否则压缩操作将失败。此外,压缩表语句只能用于普通表
(non-clustered table),不能用于分区表(partitioned table)和物
化视图(materialized view)。
【Oracle 压缩表语句的优点】
1.节省存储空间:压缩表语句可以有效地减少表占用的磁盘空间,从而降低数据库的存储成本。
2.提高查询性能:压缩表可以减少 I/O 操作的次数,从而提高查询操作的效率。
3.降低维护成本:压缩表可以减少数据库管理员进行数据维护的工作量,提高工作效率。
【Oracle 压缩表语句的注意事项】
1.在使用压缩表语句时,需要确保表空间中有足够的空间来存储压缩后的数据。
ORACLE-SQL语句学习教程
目录
概述 (2)
第一章SQL*PLUS 工具软件的使用 (5)
第二章基本查询 (9)
第三章条件查询 (13)
第四章单行函数 (16)
第五章多表查询 (20)
第六章组函数 (23)
第七章子查询 (25)
第八章运行期间指定变量 (29)
第九章创建基表 (31)
第十章ORACLE数据字典 (36)
第十一章操纵数据 (38)
第十二章修改基表及其约束 (42)
第十三章创建序列 (45)
第十四章创建视图 (47)
第十五章创建索引 (50)
概述
20世纪70年代初,E.F。Codd 在计算机学会(Association of Computer Machinery,简写为ACM)期刊Communications of the ACM(ACM 通讯)发表了题为”A Relational Model of Data for Large Shared Data Banks”(大型共享数据库的数据关系模型)的论文,该论文提出的关系数据库模型成为今天最为权威的关系型数据库管理模型.IBM公司首先使用该模型开发出了结构化英语查询语言SEQUEL(Structured English Query Language),作为其关系数据库原型System R的操作语言,实现对关系数据库的信息检索.SEQUEL后来简写为SQL,即Structured Query Language(结构化查询语言)的缩写.ORACLE公司于1997年推出了第一个商业应用的SQL软件.
20世纪80年代初,美国国家标准化组织(ANSI)开始着手制订SQL标准,最早的ANSI 标准于1986年颁布,它也被称为SQL-86。标准的出台使SQL作为标准的关系数据库语言的地位得到加强。SQL标准几经修改和完善,目前SQL语言方面新的ANSI标准是1992年制定的ANSI X3.135—1992,“Database Language SQL”。此标准也被国际电工委员会(International Electro technical Commission,即IEC)所属的国际标准化组织(International Standards Organization, 即ISO)所接受,并将它命名为ISO/IEC9075:1992, “Database Language SQL”。这两个标准又被简称为SQL—92。
第5章 对本书测试模型的介绍
第五章 对本书测试模型的介绍由于本书是一本集测试实用技术和测试实训为一体的书, 为了能体现出实训的意 义,便于在以后的章节中,边讲解实用的测试技术,边进行实际的测试实训,为此, 本书的两名作者特意抽出很多时间自行开发了两个手机信息管理系统(当然,这两个 系统还不成熟) ,我们称之为“手机信息管理系统模型” 。其中手机信息管理系统模型 V2.2 版是由李龙个人开发的,手机信息管理系统模型 V1.0 版是由李向函个人开发的 (这两个系统已放在随书附赠的光盘里,大家可以安装、使用。)。 那么,我们为什么要开发两个同样的系统呢?这主要是为了满足读者的需求,这 两个系统完成的整体功能大体相同,但是也有很多的不同之处,例如:第一个模型主 要是基于窗体开发的,内容着重强调美观性、可靠性、易用性和安全性;第二个模型 主要是基于菜单开发的,强调的是友好性、简洁性和高性能。 本章主要讲解“手机信息管理系统模型”的设计思想和实现的功能,为了突出本 书的实用性和本书的特点,本章的内容以《详细设计说明书》的形式给出,这样读者 既了解了本系统的详细情况,也深一层次的学习了《详细设计说明书》的书写方法。 由于本系统的两个版本有一定的区别,所以本说明书只针对 V2.2 版本进行介绍。 本《详细设计说明书》的目录如下表所示。 5.1 引言 5.1.1 编写目的 5.1.2 背景 I. 硬件环境 II.软件环境 5.1.3 定义 5.1.4 参考资料 5.2 程序系统的结构 5.3 对密码修改模块的设计说明 5.3.1 程序描述 5.3.2 功能 5.3.3 输人项 5.3.4 输出项 5.3.5 算法 5.3.6 流程逻辑 5.3.7 接口 5.4 详细查询功能设计说明 5.4.1 程序描述 5.4.2 功能 5.4.3 输人项 5.4.4 输出项 5.4.5 算法 5.4.6 流程逻辑 5.4.7 接口1
oracle数据库管理员手册
Oracle数据库管理员(DBA)手册涵盖了广泛的主题,包括数据库安装、配置、性能调优、备份和恢复、安全性等方面。以下是一个简要的Oracle数据库管理员手册的大纲,其中包含了一些主要的主题:
1. 数据库基础知识和架构:
- Oracle数据库的体系结构
-数据库实例和数据库
-表空间和数据文件
2. 数据库安装和配置:
- Oracle数据库软件的安装
-创建数据库
-配置监听器
-网络配置
3. 数据库对象管理:
-表和索引的创建、修改和删除
-视图、存储过程和触发器的管理
-序列的创建和管理
-同义词的使用
4. 用户和权限管理:
-用户账号的创建和管理
-角色和权限管理
-访问控制和安全性
5. 性能调优:
- SQL调优技术
-索引优化
-表分区和分表
-优化查询计划
6. 备份和恢复:
-数据库备份策略
-使用RMAN进行备份和恢复
-数据库点恢复和时间点恢复
7. 监控和诊断:
-使用AWR和ADDM进行性能分析
-查询V$视图和动态性能视图
-警告和错误日志的管理
8. 高可用性和容灾:
-数据库复制和数据保护
- RAC(Real Application Clusters)配置
-数据库故障转移和恢复
9. 安全性:
-用户身份验证和访问控制
-安全审计和监视
-数据加密和解密
10. 数据库升级和迁移:
- Oracle版本升级
-数据库迁移和导入/导出
11. 常规维护任务:
-统计信息收集和重建索引
-表空间管理
-定期任务和计划任务
12. 实用工具:
- SQL*Plus和SQLcl
- Oracle Enterprise Manager(OEM)
oracle数据库表分区方法
oracle数据库表分区方法
【原创实用版4篇】
篇1 目录
1.Oracle 数据库表分区的概念和理解
2.Oracle 数据库表分区的操作方法
3.Oracle 数据库表分区的优势和应用场景
4.总结
篇1正文
一、Oracle 数据库表分区的概念和理解
Oracle 数据库表分区是一种将大表按照一定规则划分为多个小表的方法,这样可以提高查询效率和数据管理方便性。在 Oracle 数据库中,表空间是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中。当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。
二、Oracle 数据库表分区的操作方法
1.范围分区:根据数据范围进行分区,例如按照年份、季度等时间属性进行分区。
2.列表分区:根据数据中的某一列的值进行分区,例如按照地区、产品类型等进行分区。
3.复合分区:结合范围分区和列表分区,根据多个属性进行分区。
具体的分区操作方法如下:
1.创建分区表:使用 CREATE TABLE 语句创建一个分区表,例如:
```
CREATE TABLE sales (
invoiceno NUMBER,
number NUMBER,
saledate DATE,
not NULL
)
PARTITION BY RANGE (saledate);
```
2.添加分区:如果需要对已有的分区表添加新的分区,可以使用ALTER TABLE 语句,例如:
```
ALTER TABLE sales
ADD PARTITION (PARTITION sales_p2 VALUES LESS THAN
数据库技术ppt课件
高级查询
使用聚合函数、子查询、连接查询等 高级查询技巧,实现复杂的数据查询
需求。
查询优化
针对查询性能问题,采用索引优化、 SQL语句优化、数据库结构优化等方
法,提高查询效率。
2024/1/25
19
05
数据库安全性与完整性保障措 施
云数据库具有弹性扩展、高可用性、易维护等优点,未来将成为数据 库应用的主流趋势。
数据库安全与隐私保护将更加重要
随着数据泄露事件的频发,数据库安全与隐私保护将越来越受到重视 ,相关技术和政策将不断完善。
数据库与人工智能的融合
数据库技术将与人工智能技术相结合,实现更加智能化的数据处理和 分析,提高数据利用效率和价值。
数据库中的数据按照一定的数据模型组织、 描述和存储,具有较高的结构化程度。
04
数据独立性高
数据库中的数据独立于应用程序,即 数据的逻辑结构、存储结构以及存取 方式的改变不会影响应用程序。
06
数据安全性强
数据库管理系统提供了一系列的数据安全保护 措施,如数据加密、权限控制等。
4
数据库技术发展历程
01
层次数据库和网状数据库
早期的数据库技术主要以层次模型和网状模型为主,这些模型在数据表
示和访问方面具有一定的局限性。
2024版oracle系列培训ppt课件
Oracle在人工智能领域的应用实践
人工智能平台
Oracle提供全面的人工智能平台,包括机器学习、深度学 习、自然语言处理等技术,支持企业构建智能应用。
智能数据分析
Oracle智能数据分析工具集成了人工智能和大数据技术, 帮助企业实现数据的自动化分析和预测,提升决策效率。
智能机器人与自动化 Oracle智能机器人和自动化解决方案可以帮助企业实现业 务流程的自动化和智能化,提高运营效率和质量。
阐述Oracle数据库的恢复策略, 包括完全恢复、时间点恢复和 数据文件恢复等,并介绍相应 的恢复工具(如RMAN)的使 用方法和注意事项。
提供恢复数据库的具体步骤和 操作方法,包括恢复前的准备 工作、恢复过程中的监控和管 理、恢复后的验证和测试等。
数据库性能优化
性能监控与诊断
介绍Oracle数据库性能监控的方 法和工具,包括AWR报告、 ADDM分析、SQL Trace和
的集合,是数据管理的高级阶段。
数据库的发展历程
02
从文件系统到层次、网状数据库,再到关系数据库和非关系数
据库。
Oracle数据库的特点与优势
03
高性能、高可用性、可扩展性、安全性等。
Oracle数据库体系结构
01
02
03
04
物理存储结构
数据文件、控制文件、重做日 志文件等。
oracle数据库实用教程课件
EMPNO ENAME JOB MGR HIREDATE
emp表 emp表
SAL COMM DEPTNO
GRADE LOSAL HISAL
saslaglrgarda表d表
DEPTNO DNAME
LOC
dept表 dept表
非等值连接(NON-EQUIJOIN)
请分析下列语句: SELECT ENAME,SAL,GRADE FROM EMP,SALGRAD WHERE ENAME=‘SMITH’;
外连接(OUTER JOIN)
•用于返回存在在一张表上 的所有数据行,甚至相对 应的行 在连接的表中不存 在。
•(+)号用于在查询中的 OUTERJOIN。
• 带(+)的表是那些没有 相应行的表。
EMP(WORKER )
EMPNO
ENAME
条件是:除了部门10,部门工资平均值大于1500的部门的情况。
多表查询---连接
• 等值连接 • 非等值连接 -------------------• 自连接 • 外连接
等值连接(EQUIJOIN)
• 基于列的相等性来连接两张或多张表。
题目: 查找雇员姓名及所在部门的名称.
EMPNO ENAME JOB MGR HIREDATE
12 fri Friday twelfth
number abbreviated spelled out
Oracle常用函数及实例
1 数 字 函数
1 —1 0
( 1 )A B S )
函数 A B S( x )的功 能 是 求 x的绝 对 值 。
SQL >s e l e c t a b s ( 1 O ) a b s ( 一1 0 ) f r o m d u a l :
内置 了丰 富的 函数 。供软 件人 员在 开发或 维护过 程 中使 用 ,Or a c l e数 据库 还提 供 了其他 公 司未有
的 De c o d e函数 .可以方便 地进行 数据 逻辑 处理 。讲述 了 Or a c l e中的一 些常 用 函数 ,用实例 展 现 函
数 的基 本 用 法 . 并 介 绍 De c o d e函数 使 用 的 一 些 技 巧 关 键 词 :Or a c l e 数 据 库 ; 数 字 函 数 ; 字 符 函 数 ; 日期 时 间 函数 ; 转 换 函数 ;De c o d e函数
子串 Y ,确 定 并 返 回 Y在 x中 的位 置 。 可 选 参 数 n指 定 查 找 的
S QL >s e l e c t mo d ( 1 3 , 3 ) , mo d ( 3 , 3 ) , mo d ( 1 , 3 ) f r o m d u a l ; MOD ( 1 3 , 3 ) MOD ( 3 , 3 )MOD( 1 , 3 l
12习题参考答案详解
本书习题参考答案
第1章软件测试概述
1. 软件具有几个特点,请详细说明。
软件具有8个特点:
(1) 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性。
(2) 软件的生产与硬件不同,它没有明显的制造过程。对软件的质量控制,必须着重在软件开发方面下功夫。
(3) 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。然而它存在退化问题,必须要对其进行多次的修改与维护。
(4) 软件的开发和运行常常受到计算机系统的制约,对计算机系统有着不同程度的依赖性。为了解除这种依赖性,在软件开发中提出了软件移植的问题。
(5) 软件的开发至今尚未完全摆脱人工艺的开发方式。
(6) 软件本身是复杂的。软件的复杂性可能来自它所反映的实际问题的复杂性,也可能来自程序逻辑结构的复杂性。
(7) 软件成本相当昂贵。软件的研制工作需要投入大量的、复杂的、高强度的脑力劳动,它的成本是比较高的。
(8) 相当多的软件工作涉及到社会因素。许多软件的开发和运行涉及机构、体制及管理方式等问题,它直接影响到项目的成败。
2.软件的分类方法都有哪些?
软件的分类方法有如下 4种:
(1)按软件的功能分类(系统软件,支撑软件,应用软件)
(2)按软件服务对象的范围分类(项目软件,市场软件)
(3)按开发软件所需要的人力、时间以及完成的源程序行数分类。(大型,小型,中型,微型)
(4)按软件工作方式分类
按软件的工作方式分为:实时处理软件、分时软件、交互式软件、批处理软件。3. 软件测试的概念
软件测试是软件工程中的一个环节,是开发项目整体的一部分。软件测试是有计划有组织的,是保证软件质量的一种手段,它是软件工程中一个非常重要的环节。因此,可以认为它是伴随软件工程的诞生而诞生的,伴随着软件复杂程度的增加、规模的增大,软件测试作为一种能够保证软件质量的有效手段,越来越受到人们的重视,软件测试最终目的是使产品达到完美。
ORACLE技术简介46页PPT
DDL (数据定义语句) 例如:create,alter,drop,conmit 等
commit 2、
update
每两个DDL语句间是一个transaction
DML (数据控制语句)
rollback 例如:Insert,Delete,Update
(6)后台进程 PMON,LCLN,RECO,SMON,DBWR, LGWR,CKPT,ARCH PMON 做程序的清洁工作,处理一些不正常退出的事件. SMON 做系统的清洁工作,执行系统出错后自动恢复工作. LCKN Oracle系统表级或行级加锁的进程. RECO 恢复进程. DBWR 数据写进程 LGWR 日志文件写的进程 CKPT 检测点 ARCH 归档方式备份进程
4、行迁移
1 block 2 block
行 链
当一个data block中的某部分数据经修改
后增涨太快,无法继续放在本数据块中, 从需把它搬迁到另一个data block,以优化 存储结构,标志这个data block迁移的存储 信息称为行迁移。
5、控制block空间使用的几个参数
pctfree 20%左右 它们是互相消涨的 pctused 40%左右 Inittrans 在单一块中最初活动的交易事务数 Maxtrans 在单一块中最大交易事务数
SQL语句以 摚粩结束
缺省:10分钟无SQL请求,做rollback
oracle基础
第1章OraCIe 9i基础
1.1关系型数据库系统简介
111什么是关系型数据
关系型数据是以关系数学模型来表示的数据。关系数学模型中以二维表的形式来描述数据, 如表1.1和表1.2所示。
表Ll研究生信息二维表
表1.2导师信息二维表
1.1.2什么是关系型数据库
L什么是主码(主键)
能够唯一表示数据表中的每个记录的【字段】或者【字段】的组合就称为主码。
2.什么是外码(外键)
表1.2的【编号】字段和表1.1的【导师编号】字段是对应的。表1.2中的【编号】字段是表1.2的主码。表1.2中的【编号】字段又可以称为是表1.1的外码。
1.1.3什么是关系型数据库系统
一个完整的关系型数据库系统包含5层结构,如图U所示。
图1.1关系型数据库系统的层次结构
1.硬件
硬件指安装数据库系统的计算机,包括两种。
服务器
客户机
2.操作系统
操作系统指安装数据库系统的计算机采用的操作系统。
3.关系型数据库管理系统、数据库
关系型数据库是存储在计算机上的、可共享的、有组织的关系型数据的集合。关系型数据库管理系统是位于操作系统和关系型数据库应用系统之间的数据库管理软件。
4.关系型数据库应用系统
关系型数据库应用系统指为满足用户需求,采用各种应用开发工具(如VB、PB和DelPhi 等)和开发技术开发的数据库应用软件。
5.用户
6户指与数据库系统打交道的人员,包括如下3类人员。
最终用户
数点库应用系统开发员
数据库管理员
113什么是关系型数据库管理系统
1.数据定义语言及翻译程序DDL
2.数据操纵语言及编译(解释)程序DML
3.数据库管理程序
oracle数据库分组查询语句
oracle数据库分组查询语句
下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!
并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!
Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!
In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第5章 管理表
(3) 面向集合的操作方式。SQL语言采用集合操作方式,不 仅操作对象和查询结果是记录的集合,而且一次插入、删除、更 新操作的对象也可以是记录的集合。
(4) 以同一种语法结构提供两种使用方式。SQL语言既是独 立的语言,又是嵌入式语言。作为独立的语言,SQL能独立地用 于联机交互的使用方式,用户可以在终端键盘上直接键入SQL命 令对数据库进行操作;作为嵌入式语言,SQL语言能够嵌入到高 级语言(例如C、Java、C++)程序中,供程序员设计程序时使用。
360
2003 年
第5章 管理表
5.1.2 SQL的特点 SQL之所以能够为业界人士所接受,并成为国际标准,是因
为它是一个综合的、功能极强同时又简单易学的语言。SQL集数 据查询(Data Query)、数据操纵(Data Manipulation)、数据定 义(Data Definition)、数据控制(Data Control)功能于一体, 主要特点如下:
第5章 管理表
第5章 管理表
5.1 SQL概述 5.2 管理表结构 5.3 管理表数据 5.4 查询表数据 5.5 小结 习题与思考题 实践5 管理表结构与表数据
第5章 管理表
5.1 SQL 概 述 SQL(Structured Query Language)称为结构化查询语言, 也是一个通用的、功能强大的关系数据库的标准语言。当前, 几乎所有的关系数据库管理系统软件都支持SQL,许多软件厂 商对SQL基本命令集还进行了不同程度的修改和扩充。
第5章 管理表
5.1.1 SQL的产生和发展 SQL是在1974年由Boyce和Chamberlin提出的,1975~1979年,
在IBM公司San Jose Research Laboratory研制的著名的关系数 据库管理系统原型System R中实现了这种语言。由于其功能强大、 语言简捷,深受广大计算机业界人士欢迎,并经过各公司不断的 修改、扩充、完善,SQL最终发展成为关系型数据库的标准语言。 1986年10月,SQL被美国国家标准化组织(ANSI,American National Standard Institute)确定为美国关系型数据库系统的 工业标准。1987年国际标准化组织(ISO,International Organization for Standard)也通过了这一标准,SQL正式成为 数据库领域的一个主流语言。
SQL自1986年公布以来,随着数据库技术的发展不断发展、 丰富,SQL标准的进展过程如表5-1所示。
第5章 管理表
表 5-1 SQL 标准的进展过程
标准
大致页数
发布日期
SQL/86
—
1986 年
SQL/89
120
1989 年
SQL/92
622
1992 年
SQL/99
17ቤተ መጻሕፍቲ ባይዱ0
1999 年
SQL/2003
事务的开始与结束可以由用户显式控制,如果用户没有显式 地定义事务,就由DBMS按缺省规定自动划分事务。在SQL语言中 DDL和DCL命令是自动提交的,所以遇到DDL或DCL命令,标志着一 个事务的结束,而DML命令需要显式设置事务结束标志。
第5章 管理表
例如: CREATE TABLE staff…;(具体命令参数省略) INSERT INTO TABLE staff(sno,sname) VALUES(‘00001’, ‘李四’); UPDATE staff SET sname=‘张三’ WHERE sno=‘00001’; COMMIT; 本例共2个事务,CREATE TABLE命令为DDL命令,该命令结束 时自动提交,也就是说该命令结束时隐含着在命令后添加了 COMMIT命令,所以CREATE TABLE命令为1个事务。接着为INSERT、 UPDATE命令,这两个命令为DML命令,DML命令不自动提交,必须 显式提交,所以接下来为COMMIT命令,标志着第2个事务结束。
在两种不同的使用方式下,SQL语言的语法结构基本上是一 致的,从而体现了SQL语言的灵活性和方便性。
第5章 管理表 (5) 语言简捷,易学易用。SQL语言功能极强,但其设计巧
妙,语言十分简洁,完成核心功能只用了9个动词,如表5-2所示。
SQL 功能 数据查询 数据定义 数据更新 数据控制
表 5-2 SQL 的动词
定义事务的语句有BEGIN TRANSACTION、COMMIT和ROLLBACK。
第5章 管理表
事务通常以BEGIN TRANSACTION开始,以COMMIT或ROLLBACK 结束。COMMIT表示事务提交,即提交事务的所有操作,具体地说 就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中, 事务正常结束。ROLLBACK表示事务回滚,即在事务运行的过程中 发生某种故障时,事务不能继续执行,系统将事务中对数据库的 所有已完成的更新操作全部取消,事务回滚到开始时的状态。
第5章 管理表
以上两个事务执行完成后,“staff”表中“sno”为 “00001”的员工姓名为“张三”。如果UPDATE命令后为 ROLLBACK命令,则事务执行完成后“staff”表中根本没有“sno” 为“00001”的员工,因为INSERT和UPDATE命令为第2个事务,这 两个操作要么全做,要么全不做,如果回滚,那么事务回滚到 INSERT命令前的状态。
动词
SELECT CREATE、ALTER、DROP INSERT、UPDATE、DELETE GRANT、REVOKE
第5章 管理表
5.1.3 事务的概念及性质 1.事务的概念 事务是Oracle中进行数据库操作的基本逻辑工作单位,它是
用户定义的一个数据库操作序列。例如,在关系数据库中,一个 事务可以是一组SQL命令、一条SQL命令或整个程序。通常情况下, 一个应用程序包括多个事务。事务中的所有操作是一个不可分割 的整体,这些操作要么都做,要么都不做,以保持数据库中数据 的一致性和稳定性。
(1) 综合统一。因为SQL集DQL、DDL、DML、DCL于一体,所 以SQL语言风格统一,可以独立完成数据库生命周期中的全部活 动。
(2) 高度非过程化。使用SQL语言时,存取路径的选择以及 SQL的操作过程由系统自动完成,这不但减少了用户干预的程度, 减轻了用户的负担,而且有利于提高数据独立性。