数据库设计实战(一):数据库设计规范

article/2025/10/13 14:02:39

一、数据库设计流程

 

1、需求分析

确定用户对数据库系统的使用要求和各种约束条件,形成用户需求规约

2、概念设计

对用户要求描述的现实世界,通过对其分类、聚集和概括,建立抽象的概念数据模型

3、逻辑设计

将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式

4、物理设计

对具体的应用任务选定最合适的物理存储结构、存取方法和存取路径等

5、验证设计

在其他设计基础上,收集数据并具体建立一个数据库,运行一些典型的应用任务来验证数据库设计的正确性和合理性

6、运行与维护设计

在数据库系统正式投入运行的过程中,必须不断地对其进行评估、调整与修改

二、E-R图

1、什么是实体

实体是客观事物或者逻辑事物的抽象,是可以独立存在的,由构成该事物的其他属性组成的一个概念,是可以包含多种变化的一个名词性的事务

2、实体的特性

(1)实体是独立的

(2)实体在保持自身不变的同时,允许“由于自身变化”而产生不同的性质或者表现

(3)实体是变中不变的东西,是生成变化的基础,是一组具有相同属性事物的集合

3、什么是属性

属性即事物本身所固定的性质,是物质必然的、基本的、不可分离的特性,又是事物某个方面质的表现

 4、什么是关系

关系是指存在某些事物或实体之间的关联

5、关系的两个重要概念

(1)关系的度:包含于特定关系中的实体叫做参与者,在关系中参与者的数目叫做关系的度

(2)递归关系:在不同的角色中有多次具有相同性质的实体参与的关系

@简单E-R图

@关系的度

 

@递归关系

 6、什么是E-R关系图

(1)E-R图(Entity Relationship Diagram)

(2)称为实体-关系图,用于图形化描述实体-关系模型,是指提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型

7、什么是E-R方法

是“实体-关系方法”的简称,是描述显示世界概念结构模型的有效方法

8、E-R图的基本要素

(1)实体型

(2)属性

(3)关联关系

        一对一关系(1:1)

        一对多关系(1:N)

        多对多关系(N:N)

 三、设计范式

1、什么是范式

范式是为了消除重复数据减少冗余数据,从而让数据库内的数据更好地组织,让磁盘空间得到更有效利用的一种标准,满足高等级范式的先决条件是满足低等级范式

2、范式的目标

        减少冗余数据

        消除异常

        让数据组织的更加和谐

3、第一范式(1NF)

数据库表的每一行都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。

表的每一行包含一个实例的信息

如果一个关系模型R的所有属性都是不可分的基本数据项,则R是第一范式的关系

 4、第二范式(2NF)

要求数据库表中的每个实例或行必须是唯一的。为实现区分,通常需要为表加一个列,以存储各个实例的唯一标识(即主键)

实体的属性完全依赖于主关键字。所谓完全依赖指的是不能存在仅依赖主关键字一部分的属性。如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。为实现区分通常需要为表加上一个列,以存储各个实例的唯一标识。

如果关系模型R(U,F)中的所有非主属性都完全依赖于任意一个候选关键字,则称关系R是属于第二范式的。

 

 5、第三范式(3NF)

一个数据库表中不包含已在其他表中包含的非主关键字信息。例如存在一个部门信息表,其中每个部门有部门编号DEPI_ID、部门名称、部门简介等信息。那么在员工信息表中列出的部门编号DEPT_ID后,就不能再有关于部门的其他信息,否则就会造成数据冗余。

如果关系模式R(U,F)中的所有非主属性对任何候选选关键字都不存在传递信赖,则称关系R是属于第三范式的。

 

四、数据库设计常用规范

为了优化数据库的设计,提高数据库设计的合理性和数据访问高效性,同时便于阅读和理解数据库的结构,以提高数据共享的质量和效率,促进数据库编码的标准化,特制订一套数据库规范

1、数据库命名规则

(1)对象名

使用有意义的英文单词,杜绝使用汉语拼音,单词之间用下划线分割

最大长度32个字符

名称中的缩写要统一

尽量使用名词结构

(2)表名、字段名

 

 2、数据库设计规范

 

 

 五、E-R数据模型设计

1、实体

在现实世界中,任何可以互相区别,且可被人们识别的事、物以及概念等统统可抽象为实体,每一个实体可用一个关系表来表示

每个实体都有一个唯一的名字,实体的名字通常使用名词

在E-R数据模型中,实体用一个矩形表示

2、弱实体

这种实体不能单独存在,总是依附于某个实体,因此将其称之为弱实体

在E-R数据模型中,若实体用双框的矩形表示

 3、属性

 4、关系

 5、关系数据模型

 

 

 

 6、关键的键

 

 7、关系的完整性约束

 

 

 

六、关系数据库设计

1、关系

2、一对一关系

 

 

 3、一对多关系

 

4、多对多关系

 


http://chatgpt.dhexx.cn/article/AbdmaVrv.shtml

相关文章

详解数据库设计的四个阶段

一、系统需求分析阶段 数据库设计的第一步,就是了解与分析用户需求,确定系统边界信息需求、处理需求、安全性和完整性需求,然后编写系统分析报告。 系统分析报告的内容主要包括: 随系统分析报告需提供的附件还有: …

MySQL数据库设计-案例

大家好,我是忘鱼。分享一下数据库设计(案例) 目录 一、案例 二、代码 三、总结 一、案例 如下进行数据库设计。这是黑马上的一道练习题。 二、代码 drop table if EXISTS music; drop table if EXISTS song; drop table if EXI…

数据库设计流程

数据库设计的步骤 数据库设计的流程总共有三步: 现实世界的实体模型通过建模转换为信息世界的概念模型(即 E-R 模型)概念模型经过模型转化,得到数据库使用的数据模型(在关系数据库设计中为关系模型)数据模…

浅谈数据库设计

第一章 需求分析 设计简介 根据业务需要,结合选用的DBMS,设计出最有的数据存储模型并建立好数据库中的表结构及表与表之间的关系使之有效的存储和高效的访问。 数据库设计 在系统设计开始就应该对数据库进行良好的设计,这样才能保证以后对…

数据库设计与实现

一个良好的设计对于数据库系统至关重要,它可以减少数据冗余,确保数据的一致性和完整性,同时使得数据库易于维护和扩展。 实体关系图 实体关系图(Entity-Relationship Diagram,ERD)是一种用于数据库设计的结…

数据库设计(二)——简单设计实例

Mysql设计步骤 一、设计一套系统数据库的步骤 1、实现什么样的功能(保证项目功能的完整性,列出所有模块)。 2、通过思维导图将每个功能模块串联起来(放射状,细节可以用文字描述)。 …

数据库设计的一般步骤

经过几天给韶关某个高校进行数据库设计的实训,对数据库设计的过程有了更加深刻的理解。 一、数据库设计的步骤 (1)了解功能需求 在设计数据库之前,设计人员必须要先了解系统的功能需求。这里可以通过阅读产品需求规格说明书&…

9.数据库设计

数据库设计 1、数据库设计概述 数据库设计。广义地讲,是数据库及其应用系统的设计,即设计整个数据库应用系统;狭义地讲,是设计数据库本身,即设计数据库的各级模式并建立数据库, 这是数据库应用系统设计的一…

数据库设计-概念结构设计

文章目录 数据库设计概念设计结构概念结构设计ER模型的基本元素实体/实体集属性区别实体和属性联系 二元联系的关系1:11:nm:n 一元联系1:11:nm:n 三元联系 采用ER模型的概念设计设计局部ER模型例题设计全局ER模型全局ER模型的优化 数据库设计 数据库设计:构造最优的…

数据库设计—图书管理数据库系统设计

如下代码供学习交流,获取完整代码,请关注公众号(coding加油站)获取 1、项目简介 图书馆数据库,该项目同时提供pythonweb可视化展示界面,也可提供相关报告数据,可以用来作为数据库系统设计的期…

数据库设计(一)——数据库设计

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

数据库设计的六个基本步骤

按照规范设计的方法,考虑数据库及其应用系统开发全过程,可将数据库设计分为以下6个阶段,分别为:1.需求分析,2.概念结构设计,3.逻辑结构设计,4.物理结构设计,5.数据库实施&#xff0c…

数据库设计(一)

目录 数据库设计的基本概念: 数据库设计包括以下几个部分: 需求设计: 1、数据: 2、处理: 概念结构设计: 实体: 例如: 联系类型: 1、一对一: 2、一对多&a…

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

1,数据库设计概述 1.1,数据库设计的基本概念 数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据&…

数据库系统-数据库设计

数据库系统-数据库设计 数据库设计概述及六步骤简介 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。 数据库设计的特点 数据库设计是一…

学生成绩管理系统数据库设计--MySQLSQL Server

MySQL 数据库设计-学生成绩管理系统 设计大纲友情链接 1、医疗信息管理系统数据库–MySQL2、邮件管理数据库设计–MySQL3、点餐系统数据库设计–SQL Server4、商品管理系统数据库设计–SQL Server5、SQL Server医疗信息管理系统数据库【英文版-源码】–(Medical Ma…

数据库设计-网上书店系统

一、需求分析 1.1 用户分析 网上书店系统的使用者主要有三种:普通用户、会员和管理员。 普通用户:浏览图书、查询图书、注册成为会员等; 会员:浏览图书、查询图书、加入购物车、修改购物车、订购图书、生成及查看订单、查看修改…

数据库设计

数据库设计 一.数据库设计概述1.数据库设计的特点2.数据库设计方法3.数据库设计的基本步骤4.数据库设计过程中的各级模式 二.需求分析1.需求分析的任务2.需求分析的方法3.数据字典 三.概念结构设计1.概念模型2.E-R模型3.概念结构设计 一.数据库设计概述 ①数据库设计是指对于一…

机器学习之PCA

一、PCA基本介绍 PCA(Principal Components Analysis)-主成分分析算法 用于数据降维、可视化、去噪非监督学习算法 二、PCA工作原理 目标:每次将空间中多维的样本点映射到一条直线上(要保证样本点之间的间距最大,用方差衡量,即保…

PCA9536——填坑

0. 问题 使用PCA9536输出模式控制4个小灯,开始时候按几次就不显示了,以为是接线不稳定原因。 后来一按开机电源就不显示了,以为是其他器件电源不稳定导致。 1. 问题1排除 接线问题,重新接线,重新做端子,…