数据库随堂笔记(6)ᝰ数据库设计

news/2024/7/7 19:34:13

>>>数据库设计(需求,设计,运行,维护)

必须适当开拓难题,否则学来学去都是自己会的东西

目录

1.数据库设计概述

2.需求分析

3.概念结构设计

4.逻辑结构设计

5.物理结构设计

6.数据库的实施和维护 

1.数据库设计概述

(1)数据库设计的特点

(2)数据库设计方法

(3)数据库设计的基本步骤

(4)数据库设计过程中的各级模式

2.需求分析

系统设计失败的原因,十分之六是因为需求分析出现错误

(1)需求分析的任务

(2)需求分析的方法

(3)数据字典

关于数据库中数据的描述,即元数据,而不是数据本身

数据字典通过对数据项数据结构的定义来描述数据流、数据存储的逻辑内容

a.数据项

不可再分的数据单位

b.数据结构

反映数据之间的组合关系,可由若干数据项若干数据结构甚至是数据项和数据结构的混合组成

c.数据流

数据结构在系统内传输的路径

d.数据存储

数据结构停留或保存的地方,数据流的来源和去向之一

e.处理过程

了解软件开发的基础——需求工程 

软件工程——需求工程概述icon-default.png?t=M85Bhttps://blog.csdn.net/qq_16488989/article/details/108775750?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-3-108775750-blog-96754679.pc_relevant_3mothn_strategy_recovery&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-3-108775750-blog-96754679.pc_relevant_3mothn_strategy_recovery&utm_relevant_index=6UML 建模步骤 170+收藏icon-default.png?t=M85Bhttps://blog.csdn.net/tu_wer/article/details/120486582?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166797997516800180672343%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166797997516800180672343&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-120486582-null-null.142^v63^control,201^v3^control_1,213^v2^t3_control2&utm_term=UML%E5%BB%BA%E6%A8%A1&spm=1018.2226.3001.4187【UML】UML建模 30+收藏icon-default.png?t=M85Bhttps://blog.csdn.net/heiren_a/article/details/123237482?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166797997516800180672343%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166797997516800180672343&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-2-123237482-null-null.142^v63^control,201^v3^control_1,213^v2^t3_control2&utm_term=UML%E5%BB%BA%E6%A8%A1&spm=1018.2226.3001.4187

3.概念结构设计

能一句话说清楚的就不要用两句,别为了增加论文篇幅作过多无谓的操作

(1)概念模型

概念模型是各种数据模型的共同基础

主要特点:真实反映世界;易于理解;易于更改;易于向关系、网状、层次等各种数据模型转换

(2)E-R模型

a.实体之间的联系(1对1,1对多,多对多)

不仅是两个实体型两个以上实体型单个实体型内均可以存在这3种实体联系

b.E-R图

实体型——矩形

属性——椭圆形

联系——菱形

c.一个实例

*(3)扩展的E-R模型 

*(4)UML

>>>[UML 扫盲]什么是UML?

(5)概念结构设计

a.实体与属性的划分原则

作为属性,不需要具有需要描述的性质,必须是不可划分的数据项

属性不能与其他实体具有联系

b.E-R图的集成

b(1).合并E-R图,生成初步E-R图

合理消除各E-R图的冲突是合并E-R图的主要工作与关键所在

主要由三种冲突:属性冲突、命名冲突、结构冲突

b(2).消除不必要的冗余,设计基本E-R图

注意:有些时候,冗余数据能更直观反映情况或提高效率,就保留该冗余

4.逻辑结构设计

概念结构设计阶段设计好的基本E-R图转换为与选用数据库管理系统产品所支持的数据模型相符合的逻辑结构

(1)E-R图向关系模型的转换

(2)数据模型的优化

逻辑设计的结果并非唯一

并非规范化程度越高的关系就越优

(3)设计用户子模式

5.物理结构设计

一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程

通常步骤:确定数据库的物理结构、对物理结构进行评价

(1)数据库物理设计的内容和方法

主要包括关系模式选择存取方法、设计关系、索引等数据库文件的物理存储结构

(2)关系模式存取方法选择

常用的存取方法为:索引方法和聚簇方法

a.B+树 索引存取方法的选择

b.hash 索引存取方法的选择

c.聚簇方法的选择

(3)确定数据库的存储结构

a.确定数据的存放位置

b.确定系统的配置

(4)评价物理结构

6.数据库的实施和维护 

(1)数据的载入和应用程序的调试

数据库应用程序的设计应该与数据库设计同时进行

(2)数据库的试运行

先输入小批量数据做调试用,待试运行基本合格后再大批量输入数据,逐步增加数据量,逐步完成运行评价。此外,做好数据库的转储和恢复工作来应对误操作

(3)数据库的运行和维护

a.数据库的转储

b.数据库的安全性、完整性控制

c.数据库性能的监督、分析和改造

d.数据库的重组织与重构造

概念结构的设计和逻辑结构的设计是本章的重点

题外话

面向过程 和 面向对象

面向过程——函数,以功能为单位,主要见于C

面向对象——,任何事物都可以看成对象,主要见于C++、Java、Python


http://lihuaxi.xjx100.cn/news/145336.html

相关文章

【Revit二次开发】模型中存储数据——参数和外部存储(Parameter, Schema and Entity)

模型中存储数据参数读取写入外部存储SchemaEntity快速获取外部存储参数参数 在Revit平台API中,每个图元对象都有参数属性,它是隶属于图元所有属性的集合,在此集合中更改属性值。 每个图元的参数都有一个与之关联的ElementId类型的ID大多数参…

外汇天眼:外汇走势图怎么看涨跌,怎么看外汇盘面走势图?

炒汇的难点,一是分辨行情是多头,空头或盘整形态,二是克服逆市操作的人性弱点,为此既要不断积累经验增加认知,又要对基本面技术面勤加研判,舍此并无捷径可走。 让趋势做你的朋友 外汇走势图怎么看涨跌 我…

flutter 图片加载缓存机制深入源码解析

flutter 图片加载缓存机制深入源码解析前言一、图片控件二、缓存管理三、新增缓存四、缓存清理五、图片加载六、滑动中处理总结前言 最近去看了一些flutter 中的图片加载机制的源码,在这里和大家分享一下。 目前在flutter 中,我们常用的Image 图片加载…

Java程序员不得不会的124道面试题(含答案)

1)Java 中能创建 volatile 数组吗? 能,Java 中可以创建 volatile 类型数组,不过只是一个指向数组的引用,而不是整个数组。我的意思是,如果改变引用指向的数组,将会受到 volatile 的保护&#x…

服务器测试之linux下RAID/HBA管理命令汇总

** sas3ircu ** 对LSI3008阵列卡的管理,命令用法与sas2ircu类似。提供的为可执行文件无需安装 ./sas3ircu 0 locate 2:$A on ./sas3ircu -h 查看帮助信息 ./sas3ircu list 查看所有RAID控制器信息 ./sas3ircu 0 display 查看第一块RAID控制器、volume、物理磁…

html学习,html书写规范,骨架标签,图片标签,相对路径,html常用标签

每篇博文的浪漫主义: 22岁,去做了我想做的事|独自一人摩旅1万公里【22岁,去做了我想做的事|独自一人摩旅1万公里】 https://www.bilibili.com/video/BV1UD4y1475E/?share_sourcecopy_web&vd_source385ba0043075be…

DMA实践3:dmaengine的实验

前言 本次是第三篇。 第一篇,写一个通用框架,做到拿来就能用。 第二篇,实现mmap功能,内核中的read_buf和write_buf都映射到用户空间,然后呢。写read_buf和write_buf的最后一个字节为‘R’和W,然后再release…

二、mysql数据库的安装

mysql数据库的安装二、mysql数据库的安装1、yum安装2、源码安装mysql-5.53、源码安装mysql-5.74、二进制安装mysql5.7三、数据库的链接四、mysql的安装目录说明五、mysql的配置文件my.cnf详解六、mysql的启动与关闭1、mysql启动2、mysql的关闭3、mysql登陆二、mysql数据库的安装…