第一章数据库基础知识_第1页
第一章数据库基础知识_第2页
第一章数据库基础知识_第3页
第一章数据库基础知识_第4页
第一章数据库基础知识_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

2020年4月6日5时43分 1 数据库原理与应用 温州科技职业学院网络技术专业徐仁安Email xra xdw QQ 47322875 2020年4月6日5时43分 2 课程的应用 地位 应用行业广泛 大量岗位需求 数据库开发与管理员 NO1 开设该课程的理由 行业应用分析 应用行业广泛 存在大量岗位需求 数据库开发与管理员 2020年4月6日5时43分 3 数据库创建 管理及维护能力SQL数据库对象的熟练操作和编程能力数据库项目的设计及开发能力分析问题 解决问题的能力 具备自主学习 终身学习的能力能准确阐述自己设计思路具备团队协作和创新精神 课程目标 NO3 课程整体设计 4 学习内容提要 2020年4月6日5时43分 5 Chapter1 数据库基础知识 学习目标 掌握数据库知识的基本概念 了解数据库的发展阶段 掌握关系数据库的设计方法 2020年4月6日5时43分 6 Chapter1 数据库基础知识 学习内容 1 1数据库系统概述1 2数据模型1 3关系数据库设计 2020年4月6日5时43分 7 1 1数据库系统概述 数据 数据库 数据库管理系统 数据库系统 是指现实世界中事物的存在方式或运动状态的反映 它包括文字 图形 图像 声音等 描述事物的符号记录称为数据 1 什么是信息 例 在学生成绩记录中 这样描述学生的某一门课的成绩 张达 C程序设计 80 数据传递给人的信息 张达这个人的C程序设计课程的成绩为80分 从这些数据中可以得到什么信息 2 什么是数据 2020年4月6日5时43分 8 3 什么是数据库 简称DB 长期存储在计算机内部 有组织 可共享的数据集合 4 什么是数据库管理系统 简称DBMS 是指在操作系统的支持下帮助用户建立 使用和管理数据库的软件系统 即是位于用户和操作系统之间的一层数据管理软件 它能科学地组织和存储数据 高效的获取和维护数据 2020年4月6日5时43分 9 1 数据定义功能DBMS提供了数据定义语言 用户通过它可以方便的定义数据库中的对象 如表 视图和索引等 2 数据处理功能用户可以使用数据处理功能操纵数据实现对数据库的基本操作 如查询 修改 删除和插入等 3 数据安全功能DBMS在数据库建立 运行和维护时进行统一管理 统一控制 以保证数据的安全性 完整性 多用户对数据的并发使用及发生故障后的系统恢复 4 数据备份功能DBMS为用户提供了准确 方便的备份功能 当数据库遭到破坏时可以利用备份顺利恢复数据 数据库管理系统主要功能 2020年4月6日5时43分 10 数据库系统是指引进数据库技术后的计算机系统 一般由支持数据库运行的软硬件 数据库 数据库管理系统 数据库管理员和用户等部分组成的 5 什么是数据库系统 2020年4月6日5时43分 11 1 1数据库系统概述 数据管理技术发展阶段 数据管理技术经历了人工管理 文件系统阶段和数据库系统三个阶段 1 人工管理阶段 时间 20世纪50年代中期之前 特点 1 数据不保存 在计算问题时输入数据 用完后就撤走 2 应用程序管理数据 数据由应用程序自己管理 应用程序既要规定数据的逻辑结构 也要设计物理结构 3 数据不共享 4 数据不具有独立性 也就是当数据的结构发生变化时 与其对应的应用程序必须做相应的修改 2020年4月6日5时43分 12 时间 20世纪50年代后期至60年代中期 特点 1 数据可以长期保存 2 文件系统管理数据 文件系统把数据组织成相互独立的数据文件 程序没必要考虑数据在计算机系统中的实际存储方法 即物理结构 只须考虑数据间的关系 即逻辑结构 3 数据共享性差 4 数据独立性差 即数据与程序之间仍缺乏独立性 2 文件系统阶段 2020年4月6日5时43分 13 时间 数据库系统阶段起始于20世纪60年代后期 特点 1 数据结构化 这是与文件系统的根本区别 2 数据独立性高 包括物理独立性和逻辑独立性 3 数据共享性高 冗余度低 容易扩展 3 数据库系统阶段 2020年4月6日5时43分 14 1 2数据模型 数据模型 datamodel 是对现实世界数据特征的抽象 是一个描述数据 数据联系 数据语义以及一致性约束的概念工具的集合 数据模型时应考虑三方面的要求 数据模型能比较真实地反映现实世界 数据模型容易被人理解和接受 数据模型容易在计算机上实现 分类 模型主要分为两类 概念模型和数据模型 2020年4月6日5时43分 15 概念模型 它是按照用户的观点来对信息和数据建模 主要用于数据库设计 最常用的是实体联系模型 1 2 1概念模型 1 实体 Entity 客观存在并可以相互区别的事物 例如 一个教师 一辆车 老师与学生的关系都是实体 2 属性 Attribute 实体所具有的特性称为实体的属性 一个实体由它的若干属性来体现 例如 课程实体由课程编号 课程名称 课程类别等属性组成 3 码 Key 唯一确定实体的属性集称为码 例如 课程编号是课程实体的码 1 实体联系模型设计的主要概念有 2020年4月6日5时43分 16 4 域 Domain 属性的取值范围称为该属性的域 假若规定课程编号只能取四位整数 那么这就是课程编号的域 它的范围是1000到9999 5 实体集 EntitySet 具有相同属性和性质的实体的集合称为实体集 例如 所有课程就是一个实体集 6 联系 Relationship 事物内部以及事物之间总是存在着某中联系 这些联系在概念模型中表现为实体内部的联系和实体之间的联系 2020年4月6日5时43分 17 一对一的联系 1 1 如果对于实体集A中的每一个实体 在实体集B中至多有一个实体与它有关联 反之 亦成立 则实体集A与实体集B具有一对一的联系 用1 1表示 例如 班长实体集与班级实体集是一对一的联系 一对多的联系 1 n 如果对于实体集A中的每一个实体 在实体集B中可能有多个实体与它有关联 反之 如果对于实体集B中的每一个实体 在实体集A至多有一个实体与它有关联 则实体集A与实体集B具有一对多的联系 用1 n表示 例如 班级实体集与学生实体集是一对多的联系 实体间的联系分为三类 2020年4月6日5时43分 18 a 1 1联系 b 1 n联系 c m n联系 多对多的联系 m n 如果对于实体集A中的每一个实体 在实体集B中可能有多个实体与它有关联 反之 亦成立 则实体集A与实体集B具有多对多的联系 用m n表示 例如 教师实体集与课程实体集是多对多的联系 2020年4月6日5时43分 19 2 概念模型的表示方法 表示概念模型常用的方法是实体 联系方法 Entity RelationshipApproach 该方法用E R图来说明现实世界中各实体间的联系 简称E R模型 E R图表示实体 属性和联系的方法如下 实体 用矩形表示 在矩形内注明实体名称 属性 用椭圆表示 并用无向线条将其与它的实体连接起来 联系 用菱形表示 菱形框内注明联系名 同时在无向边旁标上联系的类型 2020年4月6日5时43分 20 例如 课程实体具有课程编号 课程名称和课程性质等属性 学生具有学号 姓名 性别 出生日期和系等属性 学生通过学习与课程发生联系 用E R图表示如下 图1 1实体及其联系图 2020年4月6日5时43分 21 1 2 2数据模型 主要包括层次模型 网状模型 关系模型和面向对象模型 1 层次模型 2 网状模型 2020年4月6日5时43分 22 3 关系模型 1 关系数据模型的数据结构关系模型中数据的逻辑结构是一张二维表 它由行和列组成 关系模型中基本概念 1 关系 对应通常说的表 一个关系对应一张表 2 元组 表中除表头外的一行即为一个元组 也称为记录 3 属性 表中的一列即为一个属性 属性名即表中的列名 4 主码 表中的某个属性或属性组 它可以唯一确定一个元组 也称主键 5 域 属性的取值范围 例如 性别属性的域是 男 女 2020年4月6日5时43分 23 根据下表设问 巩固关系模型中基本概念 6 分量 元组中的一个属性值 例如 学号 080101 7 关系模式 对关系的描述 一般表示为 关系名 属性1 属性2 属性n 例 学生 学号 姓名 性别 出生日期 系别 专业 年级 2020年4月6日5时43分 24 2 关系数据模型的数据约束 1 主键约束 PRIMARYKEY 主键约束是用来保证表中元组的唯一性 它包含两层含义 不允许出现重复的值和不允许出现空值 2 外键约束 FOREIGNKEY 外键用来定义表与表之间的联系 如果关系R的某一属性组不是该关系本身的主键 而是另一关系的主键 则称该属性组是R的外键 如果在外键字段中输入一个的值 但该值在所引用的表中并不存在 则该值被拒绝 3 空值约束 NULL与NOTNULL 用来定义关系表中属性的值是否可以为空值 2020年4月6日5时43分 25 4 唯一性约束 UNIQUE 如果一个属性不允许重复 则应添加UNIQUE约束 但可以出现NULL值 但最多只能出现一个NULL 5 检查约束 CHECK 用于检查一个字段或整个表的输入是否满足指定的检查条件 在表中插入或修改记录时 如果不符合这个检查条件 则拒绝操作 6 默认值约束 DEFAULT 用于指定一个字段的默认值 当尚未在该字段中输入数据时 该字段将自动填入这个默认值 2020年4月6日5时43分 26 数据完整性用于保证关系型数据库中数据的正确性和可靠性 关系模型中有三类完整性约束 1 实体完整性用于保证关系数据库表中每一条记录都是唯一的 建立主键的目的就是为了保证实体完整性 2 参照完整性用于确保相关联的表间的数据保持一致 当添加 删除或修改关系数据库中表中的记录时 可以借助参照完整性来保证相关联的表之间的数据一致性 3 用户自定义完整性用户自定义完整性是一种强制性的数据定义 例如规定属性值的范围 是否可以取空值等 用来保证数据库中数据尽可能的正确 2 关系数据模型的数据完整性 2020年4月6日5时43分 27 1 3关系数据库设计 1 3 1数据库设计过程 2020年4月6日5时43分 28 1 需求分析 从数据库的所有用户那里收集对数据的需求和对数据处理的要求 并把这些需求写成用户和设计人员都能接受的说明书 2 概念设计 将需求说明书中关于数据的需求 综合为一个统一的DBMS概念模型 首先根据单个应用的需求 画出能反映每一应用需求的局部E R模型 然后将这些E R模型图合并起来 消除冗余和可能存在的矛盾 得出系统总体的E R模型 3 实现设计 将E R模型转换为某一特定的DBMS能够接受的逻辑模式 对关系数据库 主要是完成表的关联和结构的设计 4 物理设计 它的目的在于确定数据库的存储结构 2020年4月6日5时43分 29 1 3 2关系型数据库的规范化 在实现设计阶段 常使用关系规范化理论来指导关系数据库设计 其基本思想为 每个关系都应该满足一定的规范 从而使关系模式设计合理 达到减少冗余 提高查询效率的目的 1 第一范式 1NF 第一范式是在同一个表中 同类字段不允许重复出现 在一个字段内也不

温馨提示

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

评论

0/150

提交评论