数据库原理及应用总结.ppt_第1页
数据库原理及应用总结.ppt_第2页
数据库原理及应用总结.ppt_第3页
数据库原理及应用总结.ppt_第4页
数据库原理及应用总结.ppt_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库原理及应用 小结 第一章数据库系统基本概念 数据库系统实例数据库系统组成数据库系统的优点 数据库 数据库 Database 简称DB 是一个有结构的 集成的 可共享的 统一管理的数据集合 数据库管理系统 DataBaseManagementSystem DBMS 是用来管理数据库的一种商品化软件 所有访问数据库的请求都由DBMS来完成的 DBMS提供了操作数据库的许多命令 语言 即SQL语言 DBMS的主要功能 数据定义的功能 DBMS提供数据定义语言 DataDefinitionLanguage DDL 通过DDL 可以方便地定义数据库中的各种对象 如定义Students表结构 数据操纵的功能 DBMS提供数据操纵语言 DataManipulationLanguage DML 通过DML 实现数据库中数据的基本操作 如向Students表中插入一行数据 DBMS的主要功能 安全控制和并发控制的功能 如控制非法用户访问数据库 数据库备份与恢复的功能 对数据库进行定义备份 以便数据库遭遇意外时 能恢复 数据库系统的组成 数据库由若干张相互关联的表格组成 数据库系统各个部件之间的关系 用户与数据库应用 即应用程序 交互 应用程序与DBMS交互 DBMS访问数据库中的数据 返回给应用程序 应用程序按用户的习惯显示得到的数据 数据库系统管理数据特点 数据是集成的 共享的 数据库系统中所有的数据都集中存储在一个数据库中 数据重复小 数据独立性好 应用程序不依赖任何数据的结构与访问技术 数据结构化 易于按用户的视图表示 什么是模式呢 模式就是数据的一种抽象描述 数据库的三级模式 外模式 概念模式 内模式 1 内模式是数据库中数据的存储结构 存储方法 存取策略等的描述 也称物理模式 存储模式 2 概念模式是数据库中数据的逻辑结构的描述 也称模式 概念结构 3 外模式是单个用户用到的数据逻辑结构的描述 通常也称视图 子模式 一个数据库只有一个内模式 一个概念模式 但可以有多个外模式 实际的物理数据库与内模式对应 用户使用外模式 二级映射1 外模式到概念模式的转换 表示为 外模式 概念模式 映射 2 概念模式到内模式的转换 表示为 概念模式 内模式 映射 数据库管理系统 DBMS 不仅提供三级模式的定义语言 而且还提供了三级模式之间相互转换的机制 即二级映射机制 数据库系统的三级模式结构 外模式 概念模式映象的用途 1 保证数据的逻辑独立性当概念模式改变时 数据库管理员修改有关的外模式 概念模式映象 使外模式保持不变应用程序是依据数据的外模式编写的 从而应用程序不必修改 保证了数据与程序的逻辑独立性 简称数据的逻辑独立性 概念模式 内模式映象的用途 2 保证数据的物理独立性当数据库的存储结构改变了 例如选用了另一种存储结构 数据库管理员修改概念模式 内模式映象 使概念模式保持不变应用程序不受影响 保证了数据与程序的物理独立性 简称数据的物理独立性 数据独立性的定义与内容数据独立性是指应用程序不因物理存储的改变而改变 数据独立性包含逻辑独立性和物理独立性 逻辑独立性是指概念模式改变时 外模式保持不变 从而使应用程序保持不变 当数据库的概念模式改变时 DBMS只要改变外模式到模式的映射 就可保持外模式不变 从而使应用程序保持不变 物理独立性是指内模式改变时 概念模式保持不变 因为当内模式改变 如数据库的存储设备或存储结构改变 时 DBMS只要通过改变概念模式到内模式映射 从而使概念模式保持不变 实现了数据的物理独立性 作业3 4 5 第二章关系模型 2 1关系模型的数据结构 关系 一张满足某些约束条件的二维表 如表2 1Students关系 关系模型的数据结构是关系 元组 关系中的一行称为一个元组 对应表中的一行 存放的是客观世界的一个实体 如表Students关系中的一行 存放的是一个学生的数据 属性 关系中的一列 称为一个属性 对应表中的一列 一个属性表示实体的一个特征 如表Students关系中的Sno属性表示学生实体的学号特征值 域 关系中一个属性的取值范围 例如 Ssex的取值范围是 M F 代表性别为男性和女性 关系示例 3 关系的候选键与主键表中某一列 或若干列的最小组合 的值能惟一标识一个行 称该列或列组为候选键 对于一个表 可能有多个候选键 如果一个表有多个候选键 数据库设计者通常选择其中一个候选键作为区分行的惟一性标识符 称为主键 primarykey PK 4 关系模式关系模式是关系的形式化描述 没有具体的值 最简单的表示为 关系名 属性名1 属性名2 属性名n 5 关系数据库关系数据库是相互关联的表或者说关系的集合 一个DATABASE是Table的集合 一个关系用一个关系模式表示 所有关系模式集合构成数据库的模式 它是数据库整体逻辑结构的描述 2 2关系模型的数据完整性 关系模型的数据完整性指的是完整性规则 完整性规则包括实体完整性规则 参照完整性规则和用户自定义完整性规则三大类 实体完整性和参照完整性是关系模型必须满足的两个完整性规则 1 实体完整性规则实体完整性规则是表中任意一行的主键值不能为空值 根据主键的定义 主键值必须惟一 因此 实体完整性也可定义为 主键值惟一且不能为空值 表中任意一行的主键值不能为空值 2 参照完整性规则参照完整性规则是一个表的外键值可以为空值 若不为空值 则必须等于另一个表中主键的某个值 外键 ForeignKey FK 若一个表R1中的一个列或列组对应另一个表R2的主键 那么该列或列组称为表R1的外键 外键可以由一个或多个列组成 可以有重复值 3 用户自定义完整性规则用户自定义完整性规则是表格设计者为了保证表中某些行 列的数据满足具体应用要求而自定义的一些规则 关系代数中 运算的对象是关系 表 运算的结果是一个新关系 表 关系的运算包含两部分 即传统的集合运算和特殊的关系运算 传统的集合运算 并运算 差运算 交运算 笛卡儿积运算 4个特殊的关系运算 选择 投影 连接 除 2 3关系模型的数据操作 关系代数 1 传统的关系运算两个表的兼容性 所谓兼容 即两个表的表头结构相同 且对应列的数据类型相同 并 差 交运算都要求有两个表参加运算 并且两个表是兼容的 笛卡儿积 简称积运算 也是二元运算 即要求有两个表参加运算 但这两个表可以不兼容 笛卡儿积运算定义 给定两个表R和S R和S的积运算的结果是一个新表 新表中的行由R中的每一行和S中的每一行组合而成 记作R S 新表可能包含重复的列 因此不一定是一个关系 2 专门的关系运算包含 选择运算 投影运算和连接运算 选择运算 从指定的R表中选择某些满足条件的行构成一个新表 记作 F R 投影运算 从指定的表R中选择某些列构成一个新表 记作 A R 连接运算 从R与S的笛卡儿积R S中选择满足连接条件的行 记作 A B R S 两种特殊的连接 等值连接和自然连接 等值连接 连接条件用 则A B A B 自然连接 若等值连接的连接条件中的列名相同 且结果表中消除了重复列 则把此种等值连接称为自然连接 记作R S 自然连接中不必标注连接条件 自然运算与等值连接的区别 自然连接要求连接的两个表有相同的列 公共列 等值连接则不要求 自然连接结果表中去掉了重复的列 等值连接却可能包含重复的列 用关系代数表示查询 解题步骤 根据题意确定要输出的列以及这些列所在的表 由此确定被操作的表名称 可能有多个 根据题意 确定选择条件以及选择条件中用到的列在哪个表中 这里又确定一些被操作的表名称 根据1 2两步确定的表名称形成所有要操作的表名集 若表名集中只有一个表 则如果要输出的列是这个表的全部列 就只用选择运算 否则先用选择 后用投影选取要输出的 属性 列 如表名集中有两个或多个表 则一般用自然连接将它们连接起来 如果发现不存在公共列 即几个表不能进行自然连接 则要在表名集中加入一个或多个中间表 中间表中含有能进行自然连接的公共列 从而使得表名集中全部表可以进行自然连接 将选择条件作用于自然连接后产生的新表上 之后一般用投影操作选取要输出的列 作业 熟记p311 7 第三章关系数据库语言SQL SQL的主要功能SQL的数据定义功能SQL的数据操纵功能 SQL语言分为三种子语言 分别是 数据定义语言 DDL 用于定义数据库 表 视图等 主要有CREATE ALTER DROP语句 数据操纵语言 DML 用于插入 修改 删除和查询数据 主要有 INSERT DELETE UPDATE SELECT语句 数据控制语言 DCL 用于管理数据库用户对数据库中表 视图等的使用权限 主要有GRANT REVOKE语句 数据定义语言 3 3 1查询语句基本结构 语法 SELECTFROM WHERE GROUPBY HAVING ORDERBY 3 3 2单表查询 单表查询指的是在一个源表中查找所需的数据 因此 单表查询时 FROM子句中的只要给出一个源表表名 3 WHERE子句 WHERE中常用的运算符 比较运算符和逻辑运算符 比较运算符用于比较两个数值之间的大小是否相等 常用的比较运算符有 等于 大于 大于等于 不等于 不大于 不小于 共9种 逻辑运算符主要有 范围比较运算符 BETWEEN AND NOTBETWEEN AND集合比较运算符 IN NOTIN字符匹配运算符 LIKE NOTLIKE空值比较运算符 ISNULL ISNOTNULL条件连接运算符 AND OR NOT 3 3 3多表连接查询 多表查询指的是从多个源表中检索数据 因此 多表查询时 FROM子句中的要给出所有源表表名 各个表名之间要用逗号分隔 1 多表查询的FROM子句格式FROM例如 若一个查询用到三个表 表名分别为Students Enrollment Courses 则FROM子句为 FROMStudents Enrollment Courses 2020 3 16 47 可编辑 4 多表查询中的WHERE子句多表查询中往往要有多表的连接条件 当然还有表的一个或多个行选择条件 两者用AND操作符组合 3 3 4子查询子查询是一个SELECT查询语句 但它嵌套在SELECT INSERT UPDATE DELETE语句或其他子查询语句中 子查询可分为 非相关子查询和相关子查询 3 4数据更新 用SQL的插入语句 INSERT语句 修改语句 UPDATE语句 删除语句 DELETE语句 来向表中插入 修改 删除数据 作业 实验2 实验6 第五章数据库设计 数据库设计 包括逻辑设计和物理设计 逻辑设计 概念结构设计与逻辑结构设计 概念结构设计 实体 联系模型 E R图 逻辑结构设计 关系数据库的模式设计 E R图 实体型用矩形表示 矩形框内写明实体名 学生 教师 E R图 续 属性用椭圆形表示 并用无向边将其与相应的实体连接起来 联系属性的表示方法 联系的表示方法 5 2 1实体的转换原则 一个实体型转换为一个关系模式 关系的属性 实体型的属性关系的码 实体型的码 5 2 2联系的转换1 二元联系的转换 1 1 1联系的转换方法通常将1 1联系与某一端实体转换得到的关系合并 在被合并的关系中增加联系本身的属性和与联系相关的另一端实体对应关系的主键 被合并关系的主键保持不变 例5 2 2 将图5 4 a 学生和借书证的E R图转换为关系 2 1 n联系的转换方法通常将1 n联系与n端实体转换得到的关系合并 在n端实体对应的关系中增加联系本身的属性和一端实体对应关系的主键 新增属性后 n端实体对应关系的主键保持不变 在1 n的联系中 可以用父亲和子女这两个词语表示1对多的联系 父亲在 1 那一侧 子女在 多 的那一侧 在图5 4 b 中 宿舍是父亲实体 学生是子女实体 因此 1 n联系转换规则可以简单的定义为 将联系本身的属性和代表父实体关系的主键置于代表子实体的关系中 3 m n联系的转换方法一个m n联系转换为一个关系 新建一个表 与该联系相连的各实体的主键以及联系本身的属性均转换为关系的属性 新关系的主键由相连的各实体的主键组成 多属性构成的组合键 作业 P1321 2 3 5 第六章规范化 规范化理论正是用来改造关系模式 通过分解关系模式来消除其中不合适的数据依赖 以解决插入异常 删除异常 更新异常和数据冗余问题 1 函数依赖定义6 1 设一个关系模式R U R是关系的名称 U是关系R的所有属性的集合 X和Y为属性集U上的子集 若对于任一元组在X上的每一个值 都有Y上的一个惟一值与之对应 则称X函数决定Y 或称Y函数依赖于X 记作X Y X称为这个函数依赖的决定因子 6 2函数依赖 2 平凡函数依赖与非平凡函数依赖定义6 2 设一个关系模式R U R是关系的名称 U是关系R的所有属性的集合 X和Y为属性集U上的子集 如果X Y Y是X的子集 则称X Y是平凡的函数依赖 如果Y不是X的子集 则称X Y是非平凡的函数依赖 3 完全函数依赖与局部函数依赖定义6 3 设一个关系R U R是关系的名称 U是关系R的所有属性的集合 X和Y为属性集U上的子集 若X Y 同时X的一个真子集X 且也能够函数决定Y 即存在X Y 则称X部分函数决定Y 或Y部分函数依赖于X 记作 否则若不存在一个真子集X 使得X 也能够函数决定Y 则称X完全函数决定Y 或者Y完全函数依赖于X 记作 4 传递函数依赖定义6 4 设一个关系R U R是关系的名称 U是关系R的所有属性的集合 X Y和Z为属性集U上的子集 若X Y Y Z 且则存在称X传递函数决定Z 或者说Z传递函数依赖于X 例如 S Sno Sname Ssex Sage Dno Dname 有Sno Dno Dno Dname则有 6 3 4第一范式 1NF 定义6 6 如果一个关系R的所有属性都是不可再分的基本数据项 则称关系R属于第一范式 记作R 1NF 6 3 2最低程度的规范化关系的异常分析满足1NF的关系是一个规范化的关系 但它是规范化程度最低的关系 这样的关系仍然存在 1 数据冗余与更新异常 2 插入异常 3 删除异常 6 3 5第二范式 2NF 定义6 7 如果关系R 1NF 并且关系R的每一个非主属性不部分依赖于候选键 则R属于第二范式 记作 R 2NF 关系StudData属于第一范式 但它不属于第二范式 6 3 6第三范式 3NF 定义6 8 如果关系R 2NF 且每一个非主属性都不传递依赖于候选键 则R属于第三范式 记作R 3NF 6 3 7BC范式 BCNF 定义6 9 如果关系R 1NF 且R中每一个决定因子都是候选键 则R属于BC范式 记作R BCNF 可以证明 若R BCNF 则R 3NF 反过来 若R 3NF 则R未必属于BCNF 本质 一事一地 存放 如果不满足 一事一地 存放原则 则分解关系 6 4规范化的本质分析与总结 作业 P151 1 3 第七章数据库安全与保护 数据库安全控制机制数据库备份机制数据库恢复机制 7 1数据库安全控制机制 数据库的安全性是指数据库中的数据不被非法使用的特性 数据库管理员的职责 须指定一套安全控制策略 数据库的两类权限 对数据库管理系统进行维护的权限 对数据库中的对象和数据进行操作的权限 对数据库对象的操作权限 创建 删除和修改诸如表 视图等数据库对象 对数据库数据的操作权限 对表 视图数据的增加 删除 修改 查看的权力 数据库的三类用户 按操作权限划分 数据库系统管理员 DBA 有一切权限 数据库对象拥有者 对所拥有的对象具有一切权限 普通用户 只具有对数据库数据的增加 删除 修改 查看的权力 7 1 3SQLServer2000用户与权限管理 一个用户如果要访问SQLServer数据库中的数据 必须经过三个认证过程 安全身份验证 确认登录用户的登录帐号和密码的正确性 由此来验证用户是否具有连接到SQLServer数据库服务器的资格 用户帐号验证 登录到数据库服务器后 要访问具体的某个数据库 须有对数据库访问的用户帐号 操作许可验证 要操作数据库中的数据或对象 还须拥有相应操作的操作许可权 1 安全身份验证两种确认用户的验证模式 Windows验证模式 利用了Windows本身具备的管理登录 验证用户合法性的能力 允许SQLServer用户登录时使用Windows的用户名和口令 混合验证模式 混合验证模式接受Windows授权用户和SQL授权用户 如果不是Windows操作系统的用户也希望使用SQLServer 那么应该选择混合验证模式 SQLServer推荐使用Windows验证模式 2 登录帐号管理 3 用户帐号管理 4 权限管理权限用来限定用户可以使用的数据库对象和可以对数据库对象执行的操作 7 2数据库备份机制 7 2 1为什么要进行数据库备份SQLServer提供了内置的安全性和数据保护主要是为了防止非法登录者或没有经过的授权用户对数据库或数据造成破坏 在安全机制无效的情况下 为了能尽快恢复系统的正常工作并把损失降低到最低 必须对系统数据进行备份 以便在需要时能够及时恢复数据 SQLServer2000支持四种备份形式 数据库备份 完全数据库备份 DatabaseBackups 对数据库的完整备份 包括所有的数据库对象 数据和事务日志中的事务 7 2 2SQLServer2000数据库备份的种类 差异数据库备份 增量备份 DifferentialDatabaseBackups 将最近一次数据库备份 完全数据库备份 以来发生的数据变化备份起来 因此差异备份实际上是一种增量数据库备份 事务日志备份 TransactionLogBackup 对数据库发生的事务进行备份包括从上次事务日志备份

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论