欢迎,这是我第一次写博客,写的不好或有误请提出
理论知识
一,数据库发展历史
人工管理阶段
四个特点:数据基本上不保存,没有对数据进行管理的软件系统,没有文件概念,数据不具有独立性
文件系统阶段
四个特点:数据可以长期保存,有文件系统管理数据,文件形式多元化,数据具有一定多样性
数据库管理阶段
四个特点:采用复杂的结构化模型,较高的数据独立性(数据程序彼此独立),最低的冗余度,数据控制功能
数据库系统基本概念
数据(db)
数据库(dms)
数据库管理系统(dbms)
数据库系统(包括dms db)
三级模式
(保证了数据库的逻辑独立性和物理存储独立性)
模式
(也称为逻辑模式/所有的数据)
外模式/子模式(部分数据/部分逻辑结构)
内模式是存储模式/(物理结构)
映像保证了模式的完整性
映像
外模式映像:当映像改变时映像要做相应的改变,由数据库管理员负责,保证外模式保持不变,应用程序不必修改,保证了数据与程序的逻辑独立性,及数据的逻辑独立性
内模式映像:保证了数据与程序的物理独立性,即数据的物理独立性
SQL
是一门一体化的语言(结构化语言)
语句中结尾要添加“,”号 最后一句不用
约束 check
比如性别只能男女不能数字 年龄不能负数
数据模型
现实世界 | 信息世界(概念,er图) | 机器世界(数据关系模型) |
事物 | 实体 | 记录 |
特征 | 属性 | 文件 |
事物间联系 | 实体间联系 | 文件集 |
数据模型:表示实体类型及实体间联系的模型
根据模型应用的不同目的可以将模型分化为概念数据模型和结构数据模型
概念模型——er模型(实体联系模型)
结构数据模型——是直接面向数据库的逻辑结构,是现实世界的第二层抽象
实体之间的联系
实体集内部
将这三者的转换过程就是将客观现实点信息反应到计算机数据库的过程
一对一
一对多 选择n(多)端的作为主码
多对多 多对多可以组合
重复的数据叫冗余 (浪费空间)
数据模型的基本概念
数据模型通常由三部分组成
1,数据结构(五种基本结构: 集合 线形结构 树形结构 图形结构(网状结构)和关系结构)
2,数据操作(增删改查)
3,数据的完整性约束条件
常用的数据模型
1层次模型
2网状模型
3关系模型
关系模型由数据结构,关系操作集合,关系完整性约束三部分组成
关系代数
关系代数的五个基本操作
并 差 交 笛卡尔集 投影
第三章 数据库设计
- 数据库设计的阶段
六大阶段
需求分析阶段 | 现实世界 |
概念设计阶段 (概念转换到机器 er图) | 信息世界 |
逻辑设计阶段 (从概念阶段到逻辑阶段 er图到关系模型) | |
物理设计阶段 | 机器世界 |
数据库实施阶段 | |
运行和维护阶段 |
属性及关系模型术语
元组 每一行称为一个元组(任意两个元组不能完全相同)
属性 一列称为一个属性
主码 表中某个属性或属性组 它们的值可以唯一的确定一个元组,且属性组中不含多余的属性
分量 行列的交集称为分量 即行与列的交叉
关系模式
4个条件
1尽可能的减少数据冗余
2没有插入异常
3没有删除异常
4没有异常更新
范式
范式是规定表的标准,当数据不能增删改查时,可以减少数据冗余并且增加范式
满足最低要求的是一范式
一范式
即关系中的每个属性必须是不可再分的简单项,不能是属性组合
二范式
找到健,消除非主属性应对健的完全依赖的函数就是二范式
三范式
在二范式的基础上没有非主属性传递函数依赖的是三范式
主码/主键
主码可以由不同的数据合并构成
在表里确定唯一数的属性
唯一读到一行的叫主键
f是完全函数依赖 p是不完全函数依赖
逻辑结构设计的步骤
将er图转换为关系模型
一般应遵循的规则是:一个实体转换为一个关系模式,实体名转换为关系名,实体属性转换为关系属性
数据库文件
数据库创建有两个文件 数据文件(主数据文件和次要数据文件)和日志文件 最少需要一个日志文件和数据文件(主数据文件)
逻辑数据库
数据库对象 | 说明 | 数据库对象 | 说明 |
表 | 由行和列组成的集合用来储存数据 | 键 | 表中的列 |
数据类型 | 定义列或变量的数据类型 | 视图 | 由表或其他视图导出的虚表 |
索引 | 为数据提供快速检索的支持 | 约束 | 用定义表中列的完整性规则 |
存储过程 | 存放与服务器预先先编译好的一组T-SQL语句 | 触发器 | 一种特殊的存储过程,当条件满足时,自动执行 |
默认值 | 为列提供的默认值 |