数据规范化
第一范式
1.每一行的每一列必须只有一个值.
2.每一行的列相同.
3.所有行必须唯一.
第二范式
1.遵守所有第一范式的规则.
2.所有非主键列必须依赖主键列.
第三范式
1.遵守所有第二范式的规则.
2.所有非主键列必须依赖主键列,并且必须相互独立.
关系型数据库的关系
一对一关系.
一对多关系.
多对多关系.
其中一对一关系主要因为1.敏感信息.2.列太多.3.提高性能.
多对多关系是不存在的,一般中间都会加个连接表.
创建数据模型
逻辑型模型
物理型模型
逻辑型模型是抽象的考虑数据存储,并且严格遵守范式规则和关系模型.物理型模型是提供的数据库如何在RDBMS实现的表现.所以,逻辑型模型与数据库如何实现无关,而物理型模型就是一个特定的实现.
数据型模型是创建表,定义列,以及设置表间关系的蓝图.它必须实现:
1.组成数据库的表
2.组成每个表的列.
3.列的数据类型.
4.标识每一行的主键.
5.标明表间的关系.
创建数据模型的4个步骤:
1.识别实体
2.规范化数据
3.识别关系
4.改进数据模型
数据库就是一系列有一定关系的数据的集合.(某种方式相关的数据的集合).在数据库中,数据的描述必须 是以一定的格式被组织或者分类.这种格式叫做元数据(metadata)
常见的数据模型有3种.
层次模型
层次模型就好象是一棵倒挂的树.数据是以父类子类的形式存在.每个父类可以有多个子类,但是每个子类只能有1个父类.其形状跟WINDOWS资源管理器一样.其缺点就是
过于呆板,导航非常的麻烦.
网状模型
网络型相比层次模型提供了更多的可伸缩性.他允许有多个父子关系.他的缺点是如果数据库变动,或者程序变动,那就会引起更多的变动.
关系模型
这个较上两个,可伸缩性就更强.他对于应用程序是独立的.就是说如果应用程序有改动,但是数据库却可以不变.
数据库管理系统(DBNS)他的功能基本上是:
管理存储
维护安全
维护元数据
管理事务
支持连接性
优化性能
提供备份和恢复机智
处理数据反馈和更改的请求
一个关系型数据库(RDBNS)分成两个主要组成部分.
数据库引擎
数据
关系型数据库分两种类型.
本地数据管理系统
数据库服务器管理系统
SQL是机构化查询语言的英文缩写.它是一门非过程的语言.它是实现必须要有一个宿主语言.它本身是一种没有多少基本编程能力的次语言.
SQL语句分为三种.
DDL.数据定义语句.
DML.数据操作语言.
DCL数据控制语言.
DDL执行的任务是:创建删除数据库;创建,修改,重命名,删除表;创建删除索引.
DML执行的任务是:SQL查询;将数据插入一个表中;更改表中已有数据;删除表中数据.
DCL执行的任务是:给用户授予访问权限;取消用户访问权限.
Oracle的体系结构
Oracle主要由数据库引擎和数据库结构两部分组成.
数据库引擎又分为数据全局区(SGA)和后台处理程序两部分.