简学数据库设计总结

2023-10-18 06:08
文章标签 设计 总结 数据库 简学

本文主要是介绍简学数据库设计总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从数据库设计的步骤开始:

第一步:需求分析

任务:通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新的系统(被设计的数据库所要服务的系统)功能。

调查获得:信息要求(即对于要开发的应用系统需要从数据库中获取哪些数据,用于在设计数据库的过程中),处理要求(即用户需要对从数据库中获取的数据做哪些处理,主要是在应用程序中实现),安全性与完整性要求(即用户希望数据库能实现的安全技术和数据库中数据要保持的完整性)

数据库安全技术:用户标识和鉴定、存取控制、视图和密码存储等

数据的完整性:实体完整性、参照完整性、用户定义的完整性


表达和分析需求的方法:结构化分析方法(利用此方法,在处理功能逐步分解的同时,它们所用的数据也逐步分解,形成若干层的数据流图)


数据流图表达了数据和处理过程的关系。处理过程的处理逻辑借助判定表和判定树来描述。数据则借助数据字典(DD)来描述。


数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。包括数据项、数据结构、数据流、数据存储和处理过程。


第二步:概念结构设计


任务:将需求分析得到的用户需求抽象为信息结构即概念模型


描叙概念模型的工具:E-R模型


设计概念结构有四种方法:自顶向下、自底向上、逐步扩张、混合策略


自底向上:

1)抽象数据并设计局部视图(即利用抽象机制对需求分析阶段收集到的数据进行分类、组织(聚集),形成实体、实体的属性,标识实体的码,确定实体之间的联系类型,设计分E-R图。)

2)集成局部视图得到全局的概念结构


第三步:逻辑结构设计

任务:把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构


实现步骤:

1)将概念结构转换为一般的关系、网状、层次模型

2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换(关系数据库的规范化理论主要使用的地方

3)将数据模型进行优化


关系模型:关系名(属性1,属性2,........)


将E-R图转换成关系模型后,下一步就是向特定的RDBMS的模型转换。对于目前大都RDBMS来说,一般不必转换。



第四步:数据库物理设计(根据不同类型的数据库进行不同数据库产品在物理结构上的考量,从而选择一个较好的数据库产品即RDBMS) 

物理结构上的标准:使得在数据库上运行的各种事务响应时间小、存储空间利用率高、事务吞吐率大。

考量的两个步骤:

1)我们现在选用的是关系数据库,对于关系数据库考量物理结构主要是看数据库产品的存取方法和存取结构

2)然后再对物理结构进行评价,评价的重点是时间和空间效率

第五步:数据库的实施和维护


数据库实施阶段:完成数据库的物理设计后,设计人员就要用RDBMS提供的数据定义语言和其他实用程序将数据库逻辑设计结果和物理设计结果严格描叙出来,(SQL语句和完整性主要使用的地方)成为DBMS可以接受的源代码,再经过调试产生目标模式,然后组织数据入库和调试。(运行时安全性主要实现的地方

数据库的维护:数据库的转储与恢复、数据库的安全性和完整性控制、数据库性能的监督、分析和改造、数据库的重组织和重构造

这篇关于简学数据库设计总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/230671

相关文章

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Nginx Location映射规则总结归纳与最佳实践

《NginxLocation映射规则总结归纳与最佳实践》Nginx的location指令是配置请求路由的核心机制,其匹配规则直接影响请求的处理流程,下面给大家介绍NginxLocation映射规则... 目录一、Location匹配规则与优先级1. 匹配模式2. 优先级顺序3. 匹配示例二、Proxy_pa

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

Python+PyQt5实现MySQL数据库备份神器

《Python+PyQt5实现MySQL数据库备份神器》在数据库管理工作中,定期备份是确保数据安全的重要措施,本文将介绍如何使用Python+PyQt5开发一个高颜值,多功能的MySQL数据库备份工具... 目录概述功能特性核心功能矩阵特色功能界面展示主界面设计动态效果演示使用教程环境准备操作流程代码深度解