日期:2014-05-16  浏览次数:20511 次

Oracle 11g系列—1—基础回顾

好吧,我也未能免俗,因为在公司的年终目标上写了要学习Oracle,今天开始Oracle,给大家温过知新一下吧!不会砸我把!~嘎嘎。

其实,说真的,我很不想写理论这方面的,可是为了一个系列的完整性,我还是硬着头皮写吧。我会尽量用通俗化的口语来说那些比较生硬的专业术语,当然这里也有一些不严谨的地方,还请各位看官海涵。

好吧,刚开始其实和Oracle关系不大,都是数据库的基础知识,到第四部分才开始!~~~

---------------------本期目录导航------------------

1.关系数据库模型

2.数据库中的函数依赖

3.数据库的范式

4.Oracle应用系统结构

5.安装Oracle 11g

1.关系数据库模型

1.1 关系数据库中的一些术语

好吧,其实我第一次学习数据库的时候,我特别的烦这些术语,本来很简单的很容易懂的词语,被他们整的。。。

二维表:就是一张表,比如我们打开excel,这里可以粗略的看成一个表的结构吧。所以说,关系的逻辑结构就是一个二维表。

关系(Relation):对应我们平时看见的一张表。

元组(Tuple):一个二维表里的一行

属性(Attribute):表中的一列

域(domain):属性的取值范围,比如一个属性年龄,那么这个年龄的取值范围在0到130,这就是一个域。

关键字或码(key):也就是我们常说的主键,它能唯一的确定一个元组,也就是能唯一的确定一行。比如 学生号,那么它能确定学生姓名等等。

关系模式(Relation Schema):对关系的描述,比如关系名(属性1,属性2,属性3...)

1.2关系操作

关系数据模型中常用的关系操作:查询(Query)、插入(Inset)、删除(delete)和更新(update)

关系操作中最重要的关系查询操作:选择(select)、投影(project)、连接(join)、除(divide)、并(union)、差(except)、交(intersection)以及笛卡尔积等等。

1.3关系的完整性

实体完整性:就是数据库表格中的主键不能取空值;当属性由属性组不止一个属性)组成时,属性组中的属性均不能为空值。

参照完整性:关系模型中实体及实体间的联系都是用关系来描述的。参照完整性则是相关联的两个表之间的约束,具体的说,就是从表中每条记录外键的值必须是主表中存在的,因此,如果在两个表之间建立了关联关系,则对一个关系进行的操作要影响到另一个表中的记录。

外键:如果有属性关键字在一个表中是主关键字,那么这个属性关键字被称为另一个表的外键。外键表示了两个关系之间的联系。

如果一个属性是参照性完整性,那么它的值只能是:

1.空值,表示没有给它赋值

2.不是空值,那么必定在一个主表中的值范围中

(解释这个真累呀,呵呵~)

自定义完整性:实体完整性和参照系完整是每一个关系数据库都必须要支持的完整性。那自定义就不必了,从字面上也可以看出,就是自己定义的意思。打个比方说,你有一个性别这个属性,那么你可以只定义只能允许为“女”。这个号理解。

2.数据库中的函数依赖

所谓函数依赖是指关系中一个或一组属性的值可以决定其它属性的值。函数依赖正象一个函数 y = f(x) 一样,x的值给定后,y的值也就唯一地确定了。

2.1函数依赖的种类

2.1.1完全函数依赖和部分函数依赖

完全函数依赖:在一个关系中,若某个非主属性数据项依赖于全部关键字称之为完全函数依赖。

比如:有一个表,有如下属性:学生ID,学生姓名,所修课程ID,课程名称,成绩

完全依赖:(学生ID,所修课程ID)→成绩

成绩既不能单独依赖于学生ID,也不能单独依赖于所修课程ID,因此成绩完全函数依赖于关键字。

(学生ID,所修课程ID)→学生姓名

部分依赖:学生ID→学生姓名

学生姓名可以依赖于关键字的一个主属性——学生ID,因此学生姓名部分函数依赖于(学生ID,所修课程ID)。

2.1.2 平凡函数依赖和非平凡函数依赖

平凡函数依赖:当关系中属性集合Y是属性集合X的子集时,存在函数依赖X→Y,即一组属性函数决定它的所有子集,这种函数依赖称为平凡函数依赖

例如:在在关系学生课程表SC(学生号Sno,课程号 Cno,成绩 Grade)中,

(Sno, Cno) → Sno ,(Sno, Cno) → Cno

非平凡函数依赖当关系中属性集合Y不是属性集合X的子集时,存在函数依赖X→Y,则称这种函数依赖为非平凡函数依赖。

例如:(Sno, Cno) → Grade

2.1.3 传递函数依赖

传递函数依赖:设X,Y,Z是关系R中互不相同的属性集合,存在X→Y(Y !→X),Y→Z,则称Z传递函数依赖于X。

例:关系S1(学号,系名,系主任)

学号 → 系名,系名 → 系主任,并且 系名 -\→ 学号,所以 学号 → 系主任 为传递函数依赖

3.数据库的范式

好处:

① 减少数据冗余

②改进数据库整体组织

③增强数据的一致性

④增加数据库设计的灵活性

3.1 第一范式(1NF)

如果关系模式 R ,它的每个属性分量都是一个不可分割的数据项,则称 R 符合第一规范,记 R∈1NF

例子:

例子来源(以下同):数据库范式——通俗易懂

3.2第二范式(2NF)

若 R∈1NF 且每个非主属性完全依赖于码(也就是主键),则称 R∈2NF

例子: