关系模型:现实中的所有实体及其关系都可以用二维表及其二维表间的关系来表示!
关系模型中的关系操作,包括:选择(select) 投影(project) 链接(join)除(divide) 并(union) 交(insertsection)差(difference)等 增删改插等两大部分!
集合操作方式:即操作的对象和结果都是集合
完整性约束:实体 参照 用户定义完整性
关系数据库的列数据类型
SQL 的DDL DML功能
Oracle安装和使用
Oracle体系结构:
Oracle数据库管理系统,他是管理数据库访问的计算机软件。
有Oracle数据库和Oracle实例(instance)组成
实例:
实例是一个非固定的,基于内存的基本进程与内存结构,再启动一个与数据库文件关联的实例之前,用户不能访问数据库,实例就是平常所说的服务(service)或者是服务器(server)
当服务器关闭后,实例也就不存在了
数据库database:
数据库是指固定的,基于磁盘的数据文件和控制文件及日志文件,参数文件,归档日志文件等,这些文件是用来存储和管理相关的信息,一般情况下,安装的oracle数据库大多是一个数据只包含一个文件
如图 :
实例
|
|
数据库
数据库服务器(database server):
一般指的是数据库各软件模块(如sqlpuls,net configuration assistant ,net manager ,datebase configuration assistant OEM,EXP/IMP等)和实例机数据路三个主要部分
表空间
表空间的是三种类型:
永久表空间
临时表空间
撤销表空间
oracle 10g默认创建的表空间:
system表空间
sysaux表空间
users表空间
用户可以创建自己的表空间,为了减少IO冲突,应将不同的数据(如用户数据,系统数据,索引数据)对应的表空间放在不同的磁盘上,以提高性能!
数据文件
用户数据
系统内部数据
系统数据是管理用户数据oracle本身的数据,例如用户名称,用户建立表的名字,字段的名字,及字段的类型属于用户数据,这些数据被oracle系统存放在system表空间对应的system01.dbf文件中!而oracle系统内部的数据字典、表,如DBA_USERS,USER_TABLES等表属于oracle系统内部的数据,这些数据也存放在system01.dbf文件中!
用户数据是用户应用系统的数据,本质上是insert语句插入之后的数据。
一个表空间包含多个数据文件,再创建表空间时可以指定一个或者多个数据文件,也可以对已存在的表空间追加新的数据文件
表空间-数据库-数据文件关系
表空间是一个数据库的逻辑区
每个表空间由一个或者是多个数据文件组成
一个数据文件只能属于一个表空间
存储结构
当我们创建表空间是至少要创建一个数据文件,oracle系统创建的数据文件实际上是磁盘重新格式化成oracle数据块,并且为没一个数据块分配唯一的标识,一般oracle数据块是操作系统数据块的数倍!例如os系统格式化的块大小是1024,而oracle块的大小为4096,则表示oracle数据块是有4个os块组成
我们可以在oracle实例上创建多个表空间,每个表空间由一个或者是多个数据文件(物理文件)组成,而数据文件是有多个os块组成
我们平时创建的表,视图,索引等数据库对象是存放在已建立的表空间上的,这些数据库对象在oracle系统中成为段(segment),而每个段有多个区间(extent)构成
,每个区间又由多个连续的oracle数据块构成。所以在oracle系统中,数据块是一个基本的处理单位
表空间-数据文件-段-区间-数据块之间的关系如图: