第10章数据库技术基础_第1页
第10章数据库技术基础_第2页
第10章数据库技术基础_第3页
第10章数据库技术基础_第4页
第10章数据库技术基础_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

第10章数据库技术基础 10 1数据库的基本概念10 2数据模型10 3关系代数10 4数据库设计与管理10 5Access数据库及其应用 教学目的和基本要求 要求学生了解数据库的基本概念 数据库中使用的各种数据模型 了解关系模型及关系数据库 掌握Access的基本操作和应用 教学重点 数据库的基本概念 关系模型 Access数据库的使用方法 10 1数据库的基本概念 数据库是为实现一定的目的 按一定的组织方式存储在计算机中的相关数据的集合 数据库技术所研究的问题就是如何科学地组织和存储数据 如何高效地获取和处理数据 数据库可以直观地理解为存放数据的仓库 只不过这个仓库是在计算机的大容量存储器上 10 1 1数据库管理技术 数据和信息数据是人们用于描述客观事物的物理符号 信息是数据中所包含的意义 信息是经过加工的数据 是对决策者有影响的数据 数据是客观存在的 但信息有一定的主观性 长沙 明天阵雨 10 14 长沙的天气预报对长沙地区的人来说就是信息 但对其它地方不关心长沙天气的人来说就是数据 信息是经过加工的数据 是对决策者有影响的数据 数据处理 对各种形式的数据进行收集 存储 加工和传播的一系列活动的总和 数据管理技术的发展 人工管理阶段文件系统阶段数据库系统阶段 计算机对数据的管理是指对数据的组织 分类 编码 存储 检索和维护提供操作手段 随着计算机硬件 软件技术和计算机应用范围的发展而不断发展 多年来大致经历了如下三个阶段 各个数据管理阶段中应用程序和数据之间的对应关系 人工管理阶段 程序中要用到的数据直接写在程序代码里 人工管理阶段特点 数据不保存没有专用的软件对数据进行管理只有程序概念 没有文件概念程序中要用到的数据直接写在程序代码里 一组数据一个程序 即数据是面向程序的 文件系统阶段 各个数据管理阶段中应用程序和数据之间的对应关系 应用程序是数据依赖的 即数据的物理表示方式和有关的存取技术都是在应用程序中要考虑和体现的 文件系统阶段特点 数据可以长期保存数据的独立性低 文件系统进行数据管理 程序和数据之间由软件提供的存取方法进行转换数据共享性差 数据冗余大 数据库系统阶段 各个数据管理阶段中应用程序和数据之间的对应关系 1 将相互关联的数据集成在一起2 统一管理 着眼全局 较少的数据冗余3 程序与数据相互独立4 数据可以共享并能保证数据的一致性 数据库系统阶段的特点 数据不再只针对某一特定应用 而是面向全组织 具有整体的结构性 共享性高 冗余度小 具有较高的程序与数据间的独立性 并且实现了对数据进行统一的控制 数据管理在数据库系统阶段 经历了层次数据库和网状数据库阶段 发展至20世纪70年代 出现了关系数据库系统 并逐渐占据了数据库领域的主导地位 10 1 2数据库系统 数据库系统 DataBaseSystem 是指在计算机系统中引入数据库后的系统构成 是由数据库 数据库管理系统 应用程序 数据库管理员和用户等构成的人 机系统 数据库管理系统 DataBaseManagementSystem DBMS 是一种系统软件 负责数据库中的数据组织 操纵 维护 控制 保护和数据服务等 是数据库系统的核心 数据库系统组成示意图 DBMS的工作模式 数据库系统的基本功能 1 数据定义功能提供数据定义语言 DDL 定义数据库中的数据对象2 数据操纵功能提供数据操纵语言 DML 操纵数据实现对数据库的基本操作 检索 和更新 插入 删除和修改 3 数据库的运行控制功能提供数据控制语言 DCL 保证数据的安全性 完整性 多用户对数据的并发使用发生故障后的系统恢复4 数据库的维护功能数据库数据批量装载数据库转储介质故障恢复数据库的重组织性能监视等 这些功能由各个实用程序完成 功能示意图 数据库系统的基本特点 数据的结构化数据的高共享性与低冗余性数据的独立性数据的统一管理与控制 数据库不仅描述数据本身 而且还描述数据之间的联系 数据库系统从整个系统的角度描述数据 使得同一组记录可以被多个应用程序共享使用 从而降低冗余 指数据和应用程序之间彼此独立 不存在相互依赖的关系 包括数据的完整性检查 安全性检查和并发控制 10 2数据模型 数据模型是数据特征的抽象 它是对数据库如何组织数据的一种模型化表示 计算机不可能直接处理现实世界中的具体事物 人们必须把具体事物转换成计算机能够处理的数据 因此人们用数据模型这个工具来抽象 表示和处理现实世界中的数据和信息 数据库系统在实现的时候 先把现实的事物抽象成概念模型 再把概念模型转换为计算机上某一数据库管理系统支持的数据模型 实体 现实世界客观存在并且可以相互区分的事物 如一个学生 一张桌子属性与域 描述实体某一方面的特性 其取值范围叫域 如姓名 性别 长 宽 高关键字 唯一标识实体的属性集称为关键字 码 实体型 由实体名与其属性名的集合共同构成 如学生 姓名 性别 桌子 长 宽高 实体间的联系 实体之间的相互关系 10 2 1概念模型 实体间的相互联系 一对一联系 1 1 一对多联系 1 n 多对多联系 m n E R模型 实体联系模型 亦称E R图 E R图将现实世界的的要求 转化为实体 联系 属性等几个基本概念以及它们之间的基本连接关系 并且用图非常直观地表现出来 一对一联系 A B A B 1 1 1 1 例如 班级与班长之间的联系即为1 1一个班级只有一个班长一个班长只在一个班中任职 如果对于实体集A中的每一个实体 实体集B中至多有一个实体与之联系 反之亦然 则称实体集A与实体集B具有一对一联系 记为1 1 E R图 一对多联系 A B A B 1 N 1 n 例如 班级与学生之间的联系为1 n一个班级中有若干名学生 每个学生只在一个班级中学习 如果对于实体集A中的每一个实体 实体集B中有n个实体 n 0 与之联系 反之 对于实体集B中的每一个实体 实体集A中至多只有一个实体与之联系 则称实体集A与实体集B有一对多联系记为1 n E R图 多对多联系 A B A B M N m n 例如 课程与学生之间的联系为m n一门课程同时有若干个学生选修一个学生可以同时选修多门课程 如果对于实体集A中的每一个实体 实体集B中有n个实体 n 0 与之联系 反之 对于实体集B中的每一个实体 实体集A中也有m个实体 m 0 与之联系 则称实体集A与实体B具有多对多联系 记为m n E R图 为了把现实世界中的具体事物抽象 组织为某一具体的DBMS支持的数据模型 通常要先将现实世界抽象为信息世界 然后再将信息世界转换为机器世界 即 将现实世界中的客观对象抽象为概念模型 把概念模型转换为某一DBMS支持的 逻辑 数据模型 概念模型是现实世界到机器世界的一个中间层次 概念模型必须转化为数据模型才能在数据库中实现 10 2 2数据模型 数据模型的主要任务一是指出数据的构造 二是确定数据间的联系 主要是实体间的联系 1 层次模型 层次模型将现实世界的实体彼此之间抽象成一种自上而下的层次关系 是使用树型结构表示实体与实体间联系的模型 2 网状模型 现实世界中的有些问题 可能不符合层次模型的要求 可以使用网状模型来描述 3 关系模型 关系模型是将数据组织成二维表的形式 通过一张二维表来描述实体的属性 描述实体间联系的数据模型 在数据库系统中 满足下列条件的二维表称为关系模型 每一列中的分量是类型相同的数据列的顺序可以是任意的行的顺序可以是任意的表中的分量是不可再分割的最小数据项表中的任意两行不能完全相同 10 3关系代数 关系数据库系统是支持关系数据模型的数据库系统 关系模型是目前十分流行的一种数据模型典型的关系数据库管理系统产品有DB2 Oracle Sybase SQLServer Informix 微机型产品有Dbase Access VisualFoxPro等关系代数是关系模型和关系数据库的理论基础 10 3 1关系模型及关系数据库 关系模型 RelationalModel 用表格结构表示实体以及实体之间联系的模型 它的数据结构是二维表 即由行和列组成 这个表就叫作关系 关系数据库 RelationalDatabase RDB 以关系模型建立的数据库 10 3 2关系代数 关系代数是一种抽象的查询语言 它是用对关系的运算来表达查询的关系代数的运算主要分为两类 传统的集合运算和专门的关系运算 关系代数的运算符 传统的集合运算 将关系看成元组的集合 其运算是从关系的 水平 方向即行的角度来进行的并运算 Union 差运算 Difference 交运算 Intersection 广义笛卡儿积 专门的关系运算运算不仅涉及行而且涉及列选择 Selection 投影 Projection 连接 Join 并 Union 关系R和关系S的并记做R S 由属于R或属于S的元组 记录 组成 结果仍为n目 列 关系 交 Intersection 关系R和关系S的交记做R S 由属于R且属于S的元组 记录 组成 结果仍为n目 列 关系 差 Difference 关系R和关系S的差记做R S 由属于R而不属于S的元组 记录 组成 结果仍为n目 列 关系 举例 传统的关系运算 a 学生关系S b 课程关系C 学号 S1S2S3S4 姓名 性别 女男男女 年龄 20192118 班级 99881046510426302471 李燕吴迪贝宁赵冰 课程号 C1C2C3 课程名 系别 物理计算机数学 电路基础数据结构概率统计 学号 S1S1S2S2S2S3S3S4 课程号 等级 ABBABCAC C1C3C1C2C3C1C2C3 c 学生选课关系SC 学生选课数据库 举例 专门的关系运算 10 3 3关系的完整性约束 实体完整性参照完整性用户定义完整性 关系完整性是为保证数据库中数据的正确性和相容性 对关系模型提出的某种约束条件或规则 1 记录关键字的字段不能为空2 关键字字段值唯一 不引用不存在的实体 10 4数据库设计与管理 数据库设计要与整个数据库应用系统的设计开发结合起来进行 它包括需求分析 概念结构设计 逻辑结构设计 物理结构设计 数据库实施 数据库运行和维护6个阶段 1 需求分析 需求分析的任务是通过详细调查现实世界要处理的对象 组织 部门 企业等 充分了解原系统 手工系统或计算机系统 的工作概况 明确用户的各种需求 然后在此基础上确定新系统的功能 2 概念结构设计 将需求分析阶段得到的用户需求抽象为反映现实世界信息需求的数据库概念结构 概念模式 就是概念结构设计 能真实 充分地反映现实世界易于理解 因而可以以此为基础和不熟悉数据库专业知识的用户交换意见当应用环境和用户需求发生变化时 很容易实现对概念结构的修改和完善易于转换成关系 层次 网状等各种数据模型 3 逻辑结构设计 逻辑结构设计就是把概念结构设计阶段的E R图转换成与具体的数据库管理系统产品所支持的数据模型相一致的逻辑结构 4 物理结构设计 数据库在实际的物理设备上的存储结构和存取方法称为数据库的物理结构 5 数据库实施 数据库实施阶段的工作就是根据逻辑结构设计和物理结构设计的结果 在选用的DBMS上建立起数据库 建立数据库的结构载入实验数据并测试应用程序载入全部实际数据并试运行应用程序 发现问题则做相应处理 6 数据库运行和维护 在数据库运行阶段 对数据库经常性的维护工作主要由数据库管理员完成 主要工作包括数据库的转储和恢复 数据库的安全性和完整性控制的监督和分析 数据库的重组织和重构造等 10 5Access数据库及其应用 作为MicrosoftOffice套件之一的Access是一种运行于Windows平台上的关系数据库管理系统 它直观 易用且功能强大 是目前最受欢迎的PC数据库软件 10 5 1Access数据库概述 Access数据库是数据库对象的集合 数据库对象包括 表 查询 窗体 报表 数据访问页 宏和模块 除数据访问页以外 Access的其它数据库对象都存储在同一个以 mdb为扩展名的数据库文件中 图8 18主窗口及数据库窗口 对象创建方法和已有对象列表 数据库窗口 数据库对象栏 主窗口 表是数据库的核心与基础 存放着数据库中的全部数据信息 报表 查询和窗体都是从数据表中获得数据信息 以实现用户某一特定的需要 10 5 2创建Access数据库 Access提供2种途径来建立数据库利用数据库向导建立数据库自行创建一个空数据库 数据库中数据的组织关系数据的组织层次表的特点表的结构字段 记录 值 主关键字表之间的关系 学生管理数据库各表之间的关系 数据库的设计确定新建数据库所要完成的目的确定新建数据库所需要的表确定各个表中所需要的字段定义有唯一值的主关键字字段确定表之间的关系优化设计 10 5 3在Access数据库中创建表 分两步 创建表结构向表中输入数据 举例 Access支持的数据类型 文本不超过255个字符备注不超过64000个字符数字不能存储字母日期 时间 8B 可设置为不同形式货币 8B 带4位小数是 否 1B 只有两种选择OLE对象可存储图片 声音等 最大1G 1 创建表结构 使用表结构设计器创建表结构 Access提供了3种方法用于创建表结构 设计器 表向导和通过输入数据创建表 2 向表中输入数据 打开表输入数据保存数据表 3 建立数据表之间的关系 当数据库中有多个表时 把其中的相关表用关联字段联系起来 可以为创建查询 窗体 报表对象和输出用户所需要的信息打下基础 创建表关系的步骤 打开 关系 视图窗口建立表关系保存关系设置编辑表关系 10 5 4数据表的维护与操作 维护表维护表结构插入新的字段修改字段名称和字段属性删除字段维护表内容向表中添加记录删除表中记录修改数据美化表外观 在表中查找 替换数据通过记录定位器查找记录通过 查找与替换 对

温馨提示

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

评论

0/150

提交评论