Version3.0Oracle入门第一章目标•理解与Oracle相关的RDBMS结构•掌握Oracle数据类型•掌握数据定义语言•掌握数据操纵语言•掌握事务处理和数据控制命令Oracle简介•对象关系数据库管理系统(ORDBMS)•提供了关系数据库系统和面向对象数据库系统这二者的功能•基于客户机/服务器技术–客户机-用户和数据库之间的接口–服务器-存储和管理数据•使用Internet文件系统Oracle数据库组件•数据库由下列组件构成:–数据库文件–控制文件–恢复日志文件–表空间–段–扩展区•组件分类如下:–物理组件–逻辑组件物理组件4-1•物理组件是构成数据库的操作系统文件•为数据库信息提供了实际的物理存储器•操作系统文件有三种类型:–数据库文件或数据文件–控制文件–恢复日志文件物理组件4-2•数据库文件或数据文件–它们是物理操作系统文件,它们包括诸如用户数据、系统数据和Overhead数据等所有数据库数据–数据文件中的数据以块为单位–任何数据库创建时至少包含一个数据文件物理组件4-3•控制文件–创建数据库时,就创建了控制文件–存储数据库的物理结构–还包括关于数据库的信息数据库的名称数据文件和恢复日志文件的名称及其位置时间戳物理组件4-4•恢复日志文件:–恢复日志文件是操作系统文件集,由RDBMS用于记录对数据库所做的更改–如果出现故障,则可从恢复日志中访问并重新应用对数据库所做的更改,这样即可保护已完成的工作不受损失–数据库以下面两种模式运行NOARCHIVELOGMODEARCHIVELOGMODE逻辑组件•数据库有下列逻辑组件:–表空间–段–扩展区–架构对象表空间2-1•数据库由称为表空间的逻辑单位组成•保留相关数据库对象的组•Oracle数据库中的典型表空间是:–SYSTEM表空间–DATA表空间–USER表空间–TOOLS表空间–TEMP表空间表空间2-2数据库Data1.Ora1MBData2.Ora1MBSYSTEM表空间Data3.Ora4MBUSER表空间数据文件•数据库的控制空间分配(例如表和索引)•为数据库用户设置空间配额•备份或恢复数据段•表空间中存储在数据库空间分配中的逻辑单位称为段•定义为分配给逻辑数据库结构的扩展区集合•不同类型的段:–数据段–索引段–回滚段–临时段扩展区2-1•扩展区的集合由一定数目的相邻数据块和段组成•增量扩展区是与上次该段中分配的扩展区大小相同或更大的后续扩展区•Oracle使用独立的算法搜索整个自由空间查找第一个具有与增量扩展区具有相同的或更大大小的自由、临近数据块集合扩展区2-2•一旦Oracle在表空间中找到并分配了必需的可用空间,则它将分配一部分与新增扩展区大小相对应的可用空间•Oracle更新段标题和数据词典,以显示新的扩展区已经被分配而且分配的空间不再可用数据块•代表数据库存储的最佳粒度级别2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb2Kb数据块扩展区扩展区段Oracle的结构化查询语言•SQL*Plus输入、编辑、存储、检索和运行SQL命令以及PL/SQL块的工具•iSQL*Plus与SQL类似,但可以通过浏览器进行访问•PL/SQLSQL的扩展SQL命令的类别•数据定义语言•数据操纵语言•事务处理控制语言•数据控制语言Oracle主要数据类型4-1•Character数据类型•Number数据类型•Date数据类型•Raw和LongRaw数据类型•LOB数据类型Oracle主要数据类型4-2•Character数据类型―Char―Varchar2―Long•Number数据类型―Number(p,s)Oracle主要数据类型4-3•Date数据类型―Date―Timestamp―Intervaldaytosecond―Intervalyeartomonth―Timestampwithtimezone―TimestampwithlocaltimezoneOracle主要数据类型4-4•Raw和LongRaw数据类型―用于存储二进制数据•LOB数据类型―CLOB―BLOB―BFILE数据定义语言•数据定义命令―CREATE命令―ALTER命令―DROP命令―TRUNCATE命令数据操纵语言•数据操纵命令―INSERT―SELECT―UPDATE―DELETE事务处理和数据控制命令•事务处理控制命令―COMMIT―SAVEPOINT―ROLLBACK•数据控制语言―GRANT―REVOKE总结2-1•数据库有下面两类组件:物理组件和逻辑组件。•物理组件是操作系统文件,有下面三种类型:数据库文件或数据文件、控制文件、恢复日志文件•逻辑组件决定数据库中物理空间的使用,它包括:表空间、段、数据区、模式对象总结2-2•Oracle支持Char、Varchar2、Number、Long、Date、Raw、LongRaw和LOB等数据类型•CREATE、ALTER、DROP和TRUNCATE是用于定义数据的不同命令•INSERT、UPDATE、DELETE和SELECT是用于操纵数据的不同命令•COMMIT、SAVEPOINT和ROLLBACK是用于控制事务处理的命令•GRANT和REVOKE是用于控制数据的两条命令