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

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

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

目录

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

你可能感兴趣的:(数据库,数据库)