项目开发周期与数据库设计对比
项目开发周期与数据库设计对比
项目开发周期 | 数据库设计 |
需求分析 | 分析客户的业务和数据处理需求。 1. 收集信息(不怕多,但怕漏); 2. 标识对象; 3. 标识对象的属性; 4. 标识对象之间的关系; |
概要设计 | 设计数据库的E-R图,确认需求信息的正确和完整; 拆分 n: n关系(不合理)的表; |
详细设计 | 将E-R图转换为多张表,进行逻辑设计,并应用三大范式进行审核; |
代码编写 | 选择具体数据库进行物理实现,并编写代码实现前端应用; |
软件测试 | 添加测试数据进行项目测试; |
安装部署 | 对数据库进行封装; |
部分函数依赖:非主键列只依赖组合键中的一部分;
传递函数依赖:列A依赖列B,而列B依赖主键列,即:列A间接依赖主键列;
三大范式(1NF键;2NF全部键;3NF仅仅是键):
1NF:有主键,列不能再拆分;
2NF:满足1NF。若没有组合键则直接满足2NF;若有组合主键则保证没有部分函数依赖;
3NF:满足2NF。去除传递函数依赖;
衡量数据库性能的唯一标准:数据查询的速度。
反范式:为了数据规范化与数据库性能的平衡。
作者: XuGang 网名:钢钢 |
出处: http://xugang.cnblogs.com |
声明: 本文版权归作者和博客园共有。转载时必须保留此段声明,且在文章页面明显位置给出原文连接地址! |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架