数据库设计 订阅
数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护。 展开全文
数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护。
信息
范    围
使用数据库的各类系统
外文名
Database Design
设计内容
需求分析、概念结构设计、逻辑结构设计等
中文名
数据库设计
设计原则
一对一设计、独特命名、双向使用
目    的
数据库及其应用系统
数据库设计定义
数据库设计(Database Design)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。数据库系统需要操作系统的支持。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
收起全文
精华内容
下载资源
问答
  • 数据库设计

    千次阅读 多人点赞 2020-06-01 15:31:44
    数据库设计数据库设计概述需求分析概念结构设计逻辑结构设计物理结构设计数据库的实施和维护 本文最初由security9968发布于security9968的csdn博客,禁止任何形式的剽窃行为 转载原创文章请注明,转载自:security...

    本文最初由security9968发布于security9968的csdn博客,禁止任何形式的剽窃行为
    转载原创文章请注明,转载自:security的博客

    数据库设计

    1. 综合性的技术
    2. 涉及信息技术
    3. 数据库技术
    4. 软件工程技术

    数据库设计概述

    数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式物理结构并据此建立数据库及其应用系统使之能够有效的存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。

    • 信息管理要求:在数据库中应该存储和管理哪些数据对象; 数据操作要求:对数据对象需要进行哪些操作,如查询、增、删、改、统计等操作;
    • 数据库设计目标

    为用户和各种应用系统提供一个信息基础设施的高效率的运行环境;

    • 高效率的运行环境
    1. 数据库数据的存取效率高
    2. 数据库存储空间的利用率高
    3. 数据库系统运行管理的效率高
    • 数据库设计的特点
    1. 数据库建设的基本规律

    三分技术,七分管理,十二分基础数据

    • 管理:
      数据库建设项目管理
      企业(即应用部门)的业务管理
    • 基础数据:
      数据的收集、整理、组织和不断更新
    1. 结构(数据)设计和行为(处理)设计相结合

    将数据库结构设计和数据处理设计密切结合

    • 结构和行为分离的设计
    • 传统的软件工程:重行为设计
      忽视对应用中数据语义的分析和抽象,只要有可能就尽量推迟数据结构设计的决策
    • 早期的数据库设计:重结构设计
      致力于数据模型和数据库建模方法的研究,忽视了行为设计对结构设计的影响;

    1. 大型数据库的设计是涉及多学科的综合性技术
    • 要求设计人员具有以下多方面的知识和技能管理
    1. 计算机的基础知识
    2. 数据库的基本知识
    3. 软件工程的原理和方法
    4. 数据库设计的技术
    5. 序设计的方法和技巧
    6. 应用领域的专业知识
    • 数据库设计的基本步骤
    1. 需求分析
    2. 概念结构设计
    3. 逻辑结构设计
    4. 物理结构设计
    5. 数据库实施
    6. 数据库的运行和维护

    注意:需求分析和概念设计独立于任何数据库管理系统 逻辑设计和物理设计与选用的数据库管理系统密切相关

    图片

    • 参加数据库设计的人员
    1. 系统分析人员和数据库设计人员
      自始至终参与数据库设计,其水平决定了数据库系统的质量
    2. 数据库管理员和用户代表
      主要参加需求分析与和数据库的运行和维护
    3. 应用开发人员
      包括程序员和操作员
    • 总结
    1. 设计一个完善的数据库应用系统,往往是上述6个阶段的不断反复,这个设计步骤既是数据库设计的过程,也包括数据库应用系统的设计过程
    2. 把数据的设计和对数据库中数据处理的设计紧密结合起来,两方面的各个阶段同时进行,相互参照,相互补充,以完善两方面的设计

    需求分析

    是否做得充分与准确,决定了构建数据库的速度和质量

    • 需求分析就是分析用户的要求
    1. 是设计数据库的起点
    2. 结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用
    • 需求分析的任务
    1. 详细调查现实世界要处理的对象(组织、部门、企业等)
    2. 充分了解原系统的功能工作概况
    3. 明确用户的各种需求
    4. 在此基础上确定新系统的功能
    5. 新系统必须充分考虑今后可能的扩充和改变
    6. 调查的重点是“数据”和“处理”,获得用户对数据库的要求
    • 信息要求

    • 处理要求

    • 安全性和完整性要求

    • 确定用户最终需求的难点

    • 解决方法:不断深入和用户进行交流

    • 调查用户需求的步骤

    1. 调查组织机构的情况
    2. 调查各部门的业务活动情况
    3. 协助用户明确对新系统的各种要求
    4. 确定新系统的边界
    • 常用调查方法
    1. 跟班作业
    2. 开调查会
    3. 请专人介绍
    4. 询问
    5. 调查表
    6. 查阅记录
    • 分析方法
    1. 结构化分析方法
    2. SA方法
      采用自顶向下,逐层分解的方法分析系统
    • 需求分析的过程

    图片

    • 数据字典
    1. 数据字典是关于数据库中数据的描述,即元数据,不是数据本身
    2. 数据字典是在需求分析阶段监理,在数据库设计过程中不断修改、充实、完善
    3. 数据字典是进行详细的数据收集和数据分析所获得的主要结果

    图片

    图片在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    • 总结
    1. 把需求收集和分析作为数据库设计的第一阶段是十分重要的
    2. 第一阶段收集的基础数据(用数据字典表达)是下一步进行概念设计的基础
    3. 强调两点
    • 设计人员应充分考虑到可能的扩充和改变,使设计易于更改,系统易于扩充
    • 必须强调用户的参与

    概念结构设计

    综合、归纳、抽象形成一个独立于具体DBMS的概念模型,常用E-R图表示

    • 概念模型:将需求分析得到的用户需求抽象为信息结构(即概念模型)的过程就是概念结构设计

    • 概念模型的特点

    1. 能真实、充分地反映现实世界
    2. 易于理解
    3. 易于更改
    4. 易于向关系等转换
    • 描述概念模型的工具

    E-R图

    • E-R模型
    1. 实体之间的联系
      1对1
      1对多
      多对多
    2. 提供了表示实体型、属性和联系的方法
      实体型(矩形)属性(椭圆形)联系(菱形)

    E-R图的集成

    1. 合并各E-R图,并消除冲突(属性冲突、命名冲突、结构冲突)
    2. 修改和重构

    逻辑结构设计

    将概念模型转换为某个数据库管理系统所支持的数据模型,并对其进行优化

    • 转换内容
    1. E-R图由实体型、实体的属性和实体型之间的联系三个要素组成
    2. 关系模型的逻辑结构是一组关系模式的集合
    3. 将E-R图转换为关系模型:将实体型、实体的属性和实体型之间的联系转换为关系模式
    • 数据模型的优化
    1. 数据库逻辑设计的结果不是唯一的
    2. 得到初步数据模型后,还应该适当的修改,调整数据模型的结构
    3. 关系数据模型的优化通常以规范化理论为指导

    物理结构设计

    为逻辑数据结构选取一个最适合应用环境的物理结构 包括存储结构和存取方法

    • 数据库管理系统常用存取方法
    1. B+树索引存取方法的选择
      关系上定义的索引数过多会带来较多的额外开销
    2. HASH存取方法的选择
      该关系大小动态改变
    3. 聚簇存取方法的选择
    • 评价物理结构方法
    1. 存储空间
    2. 存取时间
    3. 维护代价

    数据库的实施和维护

    根据逻辑设计和物理设计结果构建数据库 编写与调试应用程序 组织数据入库并进行试运行

    • 数据的载入

    组织数据入库是数据库实施阶段最主要的工作

    • 数据装载方法
    1. 人工方法
    2. 计算机辅助数据入库
    • 应用程序的调试
    1. 数据库应用程序的设计应该与数据设计并行进行
    2. 组织数据入库的同时还要调试应用程序
    3. 应用程序的设计、编码、调试的方法,需要具体学习软件工程课程
    • 数据库的运行和维护
    1. 数据库的转储和恢复
    2. 数据库的安全性和完整性控制
    3. 数据库性能的监督、分析和改进
    4. 数据库的重组织与重构造

    本文最初由security9968发布于security9968的csdn博客,禁止任何形式的剽窃行为
    转载原创文章请注明,转载自:security的博客

    展开全文
  • 数据库设计三大范式

    万次阅读 2016-10-20 21:59:49
    数据库设计三大范式  为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须...

    为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。

    在实际开发中最为常见的设计范式有三个:

    1.第一范式(确保每列保持原子性)

    第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。

    第一范式的合理遵循需要根据系统的实际需求来定。比如某些数据库系统中需要用到“地址”这个属性,本来直接将“地址”属性设计成一个数据库表的字段就行。但是如果系统经常会访问“地址”属性中的“城市”部分,那么就非要将“地址”这个属性重新拆分为省份、城市、详细地址等多个部分进行存储,这样在对地址中某一部分操作的时候将非常方便。这样设计才算满足了数据库的第一范式,如下表所示。
    这里写图片描述
    上表所示的用户信息遵循了第一范式的要求,这样在对用户使用城市进行分类的时候就非常方便,也提高了数据库的性能。

    2.第二范式(确保表中的每列都和主键相关)

    第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。

    比如要设计一个订单信息表,因为订单中可能会有多种商品,所以要将订单编号和商品编号作为数据库表的联合主键,如下表所示。

    订单信息表
    这里写图片描述
    这样就产生一个问题:这个表中是以订单编号和商品编号作为联合主键。这样在该表中商品名称、单位、商品价格等信息不与该表的主键相关,而仅仅是与商品编号相关。所以在这里违反了第二范式的设计原则。

    而如果把这个订单信息表进行拆分,把商品信息分离到另一个表中,把订单项目表也分离到另一个表中,就非常完美了。如下所示。
    这里写图片描述
    这样设计,在很大程度上减小了数据库的冗余。如果要获取订单的商品信息,使用商品编号到商品信息表中查询即可。

    3.第三范式(确保每列都和主键列直接相关,而不是间接相关)

    第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。

    比如在设计一个订单数据表的时候,可以将客户编号作为一个外键和订单表建立相应的关系。而不可以在订单表中添加关于客户其它信息(比如姓名、所属公司等)的字段。如下面这两个表所示的设计就是一个满足第三范式的数据库表。
    这里写图片描述
    这样在查询订单信息的时候,就可以使用客户编号来引用客户信息表中的记录,也不必在订单信息表中多次输入客户信息的内容,减小了数据冗余。

    展开全文
  • 数据库系统原理 - - (3)数据库设计

    万次阅读 2020-07-03 08:55:25
    数据库设计概念1)数据库的生命周期2)数据库设计的目标3)数据库设计的内容4)数据库设计的方法a. 直观设计法b.规范设计法c.计算机辅助设计法5)数据库设计的过程2.数据库设计的基本步骤1)需求分析需求分析的四个...

    感谢内容提供者:金牛区吴迪软件开发工作室

    上一篇:数据库系统原理 - - (2)关系数据库

    三:数据库设计

    1.数据库设计概念

    1)数据库的生命周期

    在这里插入图片描述

    2)数据库设计的目标

    在这里插入图片描述

    3)数据库设计的内容

    在这里插入图片描述

    4)数据库设计的方法

    a. 直观设计法
    • 最原始的数据库设计方法
    b.规范设计法
    • 新奥尔良设计方法:需求分析、概念结构设计、逻辑结构设计、物理结构设计
    • 基于E-R模型的数据库设计方法
    • 基于第三范式的设计方法,是一类结构化设计方法
    c.计算机辅助设计法
    • 辅助软件工程工具

    5)数据库设计的过程

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2.数据库设计的基本步骤

    1)需求分析

    在这里插入图片描述

    需求分析的四个工作步骤:

    在这里插入图片描述

    1. 确定数据库范围(数据库的第一项工作)
      在这里插入图片描述
    2. 应用过程分析 -(了解并分析数据与数据处理间的关系)
      在这里插入图片描述
    3. 收集与分析数据
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
    4. 收集与分析数据(数据约束)
      在这里插入图片描述
      在这里插入图片描述

    2)概念结构设计

    概念模型:
    1.实体分析法(自顶向下法)

    在这里插入图片描述

    2.属性综合法(自底向上法)

    3)逻辑结构设计

    在这里插入图片描述
    在这里插入图片描述

    4)物理设计

    在这里插入图片描述

    5)数据库实施

    在这里插入图片描述
    在这里插入图片描述

    6)数据库运行与维护

    为了保证数据库的正常运行。
    系统维护中最困难的工作是数据库重组与重构

    3.关系数据库设计方法

    1)E-R图的表示方法

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2)概念结构设计方法

    a.局部信息结构设计

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    数据间的联系必须xxx

    属性分为标识属性和说明属性。

    b.全局信息结构设计

    在这里插入图片描述

    c.逻辑结构设计方法

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    d.数据模型的优化

    在这里插入图片描述

    e.设计用户子模式

    在这里插入图片描述

    f.物理设计方法

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    下一篇:数据库系统原理 - - (4)SQL与关系数据库基本操作

    展开全文
  • 数据库设计(一)——数据库设计

    万次阅读 多人点赞 2018-08-30 17:30:34
    一、数据库设计简介 按照规范设计,将数据库的设计过程分为六个阶段:  A、系统需求分析阶段 B、概念结构设计阶段 C、逻辑结构设计阶段 D、物理结构设计阶段 E、数据库实施阶段 F、数据库运行与维护阶段 需求分析...

     

    一、数据库设计简介

    按照规范设计,将数据库的设计过程分为六个阶段: 
    A、系统需求分析阶段
    B、概念结构设计阶段
    C、逻辑结构设计阶段
    D、物理结构设计阶段
    E、数据库实施阶段
    F、数据库运行与维护阶段
    需求分析和概念结构设计独立于任何数据库管理系统。

    二、系统需求分析

    1、需求分析的任务

    需求分析的任务:对现实世界要处理的对象进行详细的调查,通过对原系统的了解,收集支持新系统的基础数据并对其进行处理,在此基础上确定新系统的功能。
    A、调查分析用户活动
    B、收集和分析需求数据,确定系统边界信息需求,处理需求,安全性和完整性需求
    C、编写系统分析报告

    2、需求分析的方法

    需求分析有两种方法:自顶向下、自底向上
    A、自顶向下
    自顶向下方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统。
    用数据流图和数据字典描述系统
    数据流图:描述输入数据到输出数据的变换过程
    数据流:由一组固定成分的数据组成,代表数据的流动方向
    处理:描述了输入数据到输出数据的变换
    文件:用于存储数据
    源或宿:存在于系统之外的人员或组织,表示系统输入数据的来源和输出数据的去向
    B、自底向上

    3、实例

    教学管理系统
    基本需求:
    某学校设计学校教学管理系统,学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、入学日期,每名学生选择一个主修专业,专业包括专业编号、名称、类别,一个专业属于一个学院,一个学院可以有多个专业。学院信息要存储学院号、学院名、院长。教学管理要管理课程表、学生成绩表。课程包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。

    三、概念结构设计

    1、概念结构设计简介

    概念结构设计的目标是设计数据库的E-R模型图,确认需求信息的正确和完整。具体来说就是从需求分析中找到实体,确认实体的属性、确认实体的关系,画出ER图。

    2、概念结构设计的步骤

    数据库设计(一)——数据库设计
    数据库设计(一)——数据库设计
    第一步,数据抽象与局部E-R模型设计
    A、数据抽象
    在多层数据流中选择一个适当层次作为设计E-R图的出发点。
    确定每个局部应用包含哪些实体,实体包含哪些属性,实体之间的联系
    划分实体和属性的方法
    分类:将一组具有某些共同特性和行为的对象抽象为一个实体。
    聚合:将对象类型的组成成分抽象为属性。
    B、局部E-R模型设计
    局部E-R模型设计的原则是属性必须是不可分的数据项,不能再由放弃其他属性组成;属性不能与其他实体具有联系,联系只能发生在实体之间。
    为简化E-R图,凡是能作为属性对待的,尽量作为属性。
    第二步,全局E-R模型设计
    集成各局部E-R模型,形成全局模型。视图集成的方法有两种:
    A、多元集成法:一次性将多个局部E-R图合并为一个全局E-R图。
    B、二元集成法:首先集成两个重要的局部E-R图,然后用累加的方法逐步将一个新的E-R图集成进来。
    合并:
    合并局部E-R图,消除冲突,初步生成E-R图。合并的关键是合理消除各局部E-R图的冲突。
    冲突分类如下:
    数据库设计(一)——数据库设计
    优化:
    消除初步E-R图中不必要的冗余,生成基本的E-R图。
    冗余数据:可由基本的数据导出的数据。
    冗余联系:可由基本的联系导出的联系。
    数据库设计(一)——数据库设计

    3、实例

    教学管理系统的E-R图
    实体:学生、专业、学院、课程
    实体表要记录的属性:
    学生(学号、姓名、性别、生日、籍贯、民族、简历、入学日期)
    数据库设计(一)——数据库设计
    专业(专业号、专业名称、类别)
    学院(学院号、学院名称、院长)
    课程(课程号、课程名称、学分)
    数据库设计(一)——数据库设计
    教学管理ER图:
    数据库设计(一)——数据库设计

    四、逻辑结构设计

    1、逻辑结构设计简介

    逻辑结构设计的任务是将概念结构设计阶段完成的实体模型转换成特定的DBMS所支持的数据模型的过程。逻辑结构设计的目的是将E-R图中的实体、属性和联系转换成为关系模式。
    数据库设计(一)——数据库设计

    2、初始关系模型设计

    (1)实体间关系转换遵循的原则:
    一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。
    一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。
    联系关系的键有三种情况:
    如果联系为1:1,则每个实体的键都是关系的候选键
    如果联系为1:n,zen端实体的见识关系的键
    如果联系为n:m,则各实体的键的组合是关系的键
    特殊情况:多元联系
    多元联系在转换为关系模式时,与该多元联系相连的各实体的主键及联系本身的属性均转换为关系的属性,转换后所得到的的关系的主键为各实体键的组合
    (2)实体间关系的转换规则:
    A、一个1:1关系可以转换为一个独立的关系模式,也可以与任意一端所对应的关系模式合并。 
    数据库设计(一)——数据库设计
    原实体对应关系模式分别为:
    班级(班号,专业,人数)
    班长(学号,姓名,专长)
    将关系“管理”合并到实体“班级”对应的模式后为:
    班级(班号,专业,人数,班长学号)
    班长(学号,姓名,专长)
    关系“管理”也可以合并到实体“班长”对应的模式,将关系“管理”合并到实体“班级”对应的模式后为:
    班级(班号,专业,人数)
    班长(学号,姓名,专长,班号)
    B、一个1:n关系可以转换为一个独立的关系模式,也可以与n端所对应的关系模式合并。
    数据库设计(一)——数据库设计
    实体对应的关系模式
    系(系号,系名,系主任,电话)
    教师(教师号,姓名,专业,职称,性别,年龄)
    关系对应的关系模式
    管理(教师号,系号)
    合并到实体“教师”后(只能合并到“多”的一端的关系模型):
    教师(教师号,姓名,专业,职称,性别,年龄,系号)
    C、一个m:n关系转换为一个关系模式。转换的方法为:与该关系相连的各实体的码以及关系本身的属性均转换为关系的属性,新关系的码为两个相连实体码的组合。
    关系只能转换为独立模式,模式的属性由关系本身的属性及两个实体的键构成;主键由两端实体的键组合而成。
    数据库设计(一)——数据库设计
    课程(课程号,课程名,学时,类别) 实体表
    学生(学号,姓名,性别,专业,出生日期,照片) 实体表
    选修(学号,课程号,分数) 关系表
    D、三个或三个以上实体间的多元关系转换为一个关系模式。
    关系的属性:与该多元关系相连的各实体的码以及关系本身的属性
    关系的码:各实体码的组合
    “讲授”关系是一个三元关系,可以转换为如下关系模式,其中课程号、职工号和书号为关系的组合码:
      讲授(课程号,职工号,书号)

    3、关系模式规范化

    应用数据库设计的范式理论对初始关系模型进行优化。数据库设计的三大范式如下:
    第一范式 每一个分类必须是一个不可分的数据项。属性不可再分,确保每列的原子性。
    第二范式 要求每个表只描述一件事情,每条记录有唯一标识列。
    第三范式 数据库表中不包含已在其它表中已包含的非主关键字信息。
    关系模式的规范化过程如下:
    A、确定范式级别
    考察关系模式的函数依赖关系,确定范式等级。
    B、实施规范化处理
    利用规范化方法和理论将关系模式规范化。
    C、模式改进
    合并:
    将用于关联查询的具有相同主键的各表合并可提高查询效率
    分解:
    水平分解,将关系的元组分为若干子集,提高查询效率;垂直分解,把关系中经常一起使用的属性分解出来,形成一个子关系,提高执行效率。分解时要保持无损连接和函数依赖。

    4、实例

    教学管理系统
    由ER模型转化为的关系模型:
    学生(学号、姓名、性别、生日、籍贯、民族、入学日期、专业号)实体表
    专业(专业号、专业名称、类别、学院号)实体表
    学院(学院号、学院名称、院长)实体表
    课程(课程号、课程名称、学分、学院号)实体表
    成绩表(学号、课程号、成绩)关系表
    在转换为关系模型时,一对多的联系都在相应的多方实体的关系中增加一个外键。
    需求的增加:
    如果教学管理系统还要管理教师教学安排,教师包括编号、姓名、年龄、职称,一个教师只能属于一个学院,一名教师可以上若干门课程,一门课程可以有多名老师来上,每个教师所上的每门课都有一个课堂号和课时数。
    教师实体的ER图:
    数据库设计(一)——数据库设计
    教学管理系统ER图:
    数据库设计(一)——数据库设计
    关系表 多对多
    成绩表 (学号,课程号,成绩,时间,地点)

    五、物理结构设计

    1、物理结构设计简介

    物理结构设计:对于给定的逻辑数据模型,选取一个最适合应用环境的物理结构。数据库的物理结构设计分为两步:
    A、确定物理结构:存取方法和存储结构
    B、评价物理结构:评价重点是时间和空间效率
    根据具体的数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构(数据类型 索引 主键)。

    2、确定物理结构

    (1)存储结构的设计
    物理结构中,数据的基本存取单位是存储记录。
    某一类型的所有存储记录的集合称为文件。
    确定数据库存储结构时要综合考虑存取时间、存储空间利用率和维护代价三方面的因素。例如消除一切冗余数据虽然能够节约存储空间,但往往会导致检索代价的增加,因此必须进行权衡,选择一个折中方案。
    (2)数据存取路径的设计
    在关系数据库中,选择存取路径主要是指确定如何建立索引。例如,应把哪些域作为次码建立次索引,建立单码索引还是组合索引,建立多少个为合适,是否建立聚集索引等。
    (3)数据存放位置的设计
    为了提高性能,可将数据的易变部分、稳定部分、经常存取部分和存储频率较低部分分开存放。
    (4)系统配置的设计
    DBMS产品一般都提供了一些存储分配参数,供设计人员和DBA对数据库进行物理优化。初始情况下,系统都为这些变量赋予了合理的缺省值,但是这些值不一定适合每一种应用环境,在进行物理设计时,需要重新对这些变量赋值以改善系统的性能。

    3、评价物理结构

    物理结构设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,其结果可以产生多种方案,数据库设计人员必须对方案进行细致的评价,从中选择一个较优的方案作为数据库的物理结构。
    评价物理数据库的方法完全依赖于所选用的DBMS,主要是从定量估算各种方案的存储空间、存取时间和维护代价入手,对估算结果进行权衡、比较,选择出一个较优的合理的物理结构。

    4、实例

    教学管理系统
    表1-1 学院
    数据库设计(一)——数据库设计
    表1-2 专业 
    数据库设计(一)——数据库设计
    表1-3 学生
    数据库设计(一)——数据库设计
    表1-4 课程
    数据库设计(一)——数据库设计
    表1-5 成绩单
    数据库设计(一)——数据库设计

    六、数据库实施

    1、数据库实施的过程

    数据库实施:指根据逻辑设计和物理设计的结果,在计算机上建立起实际的数据库结构、装入数据、进行测试和试运行的过程。
    数据库设计(一)——数据库设计

    2、实例

    学生表:
    数据库设计(一)——数据库设计
    课程表:
    数据库设计(一)——数据库设计
    专业表:
    数据库设计(一)——数据库设计
    学院表:
    数据库设计(一)——数据库设计
    成绩表:
    数据库设计(一)——数据库设计

    七、数据库运行与维护

    数据库运行与维护的主要任务包括:
    A、维护数据库的安全性与完整性
    B、监测并改善数据库性能
    C、重新组织和构造数据库
    只有数据库系统在运行,就需要不断地进行修改、调整和维护。

    转载于:http://blog.51cto.com/9291927/2087925

    展开全文
  • 电商数据库设计 mysql 数据库设计规范
  • 数据库设计的基本步骤

    万次阅读 多人点赞 2017-08-13 20:52:16
    数据库设计的基本步骤 按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段 1.需求分析 2.概念结构设计 3.逻辑结构设计 4.物理结构设计 5.数据库实施 6.数据库的运行和维护   在...
  • 数据库题目之数据库设计

    千次阅读 2019-01-10 15:21:25
    1、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的 阶段。 A.需求分析 B.概念设计 C.逻辑设计 D.物理设计 【答案:】B 2、在关系数据库设计中,设计关系模式是 的...
  • MYSQL数据库设计数据库设计实例(二)
  • 数据库设计范式

    千次阅读 2020-01-31 20:53:09
    数据库设计范式
  • 规范数据库设计

    千次阅读 2021-03-29 11:11:19
    规范数据库设计 设计数据库 当数据库比较复杂的时候,我们就需要设计了 糟糕的数据库设计: 数据冗余 浪费空间 数据库插入和删除都会麻烦,异常 程序的性能差 良好的数据库设计: 节省内存空间 保证数据库的完整...
  • 数据库设计——评论回复功能

    万次阅读 多人点赞 2017-05-03 02:43:48
    本文主要介绍评论功能的数据库设计。评论功能最主要的是发表评论和回复评论(删除功能在后台)。评论功能的拓展功能体现有以下几方面: (1)单篇文章的评论数量和信息展示; (2)从时间维度,按照时间倒
  • 数据库设计总结

    万次阅读 多人点赞 2018-04-08 23:43:12
    对于一个系统,数据库的设计是非常重要的,数据库设计决定了以后数据好不好维护。后期需求好不好展。同时也决定了系统的性能。一个坏的数据库设计一个功能点的改动可能会设计多张表的改动。一不小心可能就会引起数据...
  • 数据库设计的一般步骤

    万次阅读 多人点赞 2019-06-13 20:03:58
    经过几天给韶关某个高校进行数据库设计的实训,对数据库设计的过程有了更加深刻的理解。 数据库的设计按照以下步骤: (1)了解功能需求 在设计数据库之前,设计人员必须要先了解系统的功能需求。这里可以通过...
  • 数据库设计概述

    千次阅读 2020-11-09 09:23:52
    数据库设计的重要性 数据库设计主要设计数据库结构(数据模型)。合理的、较优的数据模型可以使用应用系统达到最佳状态,并能避免类似于文件系统那样的数据冗余、数据异常、数据不一致现象。 数据库设计步骤 数据库...
  • 图书管理系统数据库设计

    万次阅读 多人点赞 2018-05-26 23:44:35
    图书管理系统数据库设计 博主在github上找的这个项目链接,大家想参考的可以看看! JAVA GUI 图书馆管理系统:https://github.com/uboger/LibraryManager 图书馆流通管理系统:...
  • 为什么要进行数据库设计
  • 前言通常情况下,可以从两个方面来判断数据库设计的是否规范: 1)一是看看是否拥有大量的窄表 窄表往往对于OLTP比较合适,符合范式设计原则 2)宽表的数量是否足够的少。 所谓的宽表就是字段比较多的表,包含...
  • Oracle 数据库设计-数据库表设计

    千次阅读 2018-11-01 21:22:57
    数据库设计中,我的工作中经常会分析怎样商业逻辑中的表格如何设计。再设计表的关系之前 需要先了解关系型数据库特点 1、关系型数据库,是指采用了关系模型来组织数据的数据库; 2、关系型数据库的最大特点就是...
  • 学生成绩管理系统数据库设计--MySQL

    万次阅读 多人点赞 2020-06-18 13:02:04
    MySQL/SQL Server 数据库设计(学生成绩管理系统) 设计大纲 1. 项目背景及需求分析 1.1 项目背景 1.2 需求分析 1.2.1 信息需求 1.2.2 功能需求 1.2.3 安全性与完整性需求 2. 概念结构设计 2.1 抽象出系统实体 2.2 ...
  • MySql数据库主键外键与数据库设计

    千次阅读 2019-05-20 01:38:57
    MySql数据库主键外键与数据库设计
  • 数据库设计思路

    千次阅读 2019-10-31 15:26:20
    数据库设计追求逐渐完善,不求一下子完美
  • 数据库设计-三大范式

    万次阅读 2021-02-07 16:19:37
    数据库设计-三大范式数据库设计概述1. 第一范式例子第二范式例子第三范式例子 数据库设计概述 目的:减少数据冗余 在设计和数据库有关的系统时,数据库表的设计至关重要,这些设计关系整个系统的架构,需要精心的...
  • 数据库设计的三大范式:为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须...
  • PowerDesigner数据库设计与建模,本课程讲述了如何使用PowerDesigner进行数据库分析与建模。包括企业架构及业务流程分析,实体关系模型设计,面向对象和数据库建模的集成等功能模块进行项目需求分析、结构规划、生成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 198,251
精华内容 79,300
关键字:

数据库设计