巩义网站建设价格建设网站的合同

张小明 2025/12/31 10:26:33
巩义网站建设价格,建设网站的合同,百度扫一扫,厦门地税网站建设文章目录引言第一范式第二范式第三范式总结❤️引言 作为后端开发者#xff0c;项目初期进行库表设计的时候#xff0c;如果光凭经验而没有一套合适的方法论#xff0c;大概率项目最后会变成一个难以维护的“史山”。那么我们就来简单讲讲数据库表设计的三大范式#xff0c…文章目录引言第一范式第二范式第三范式总结❤️引言作为后端开发者项目初期进行库表设计的时候如果光凭经验而没有一套合适的方法论大概率项目最后会变成一个难以维护的“史山”。那么我们就来简单讲讲数据库表设计的三大范式尽量都让大家听懂我们的最终目的是大家掌握应对各种业务场景设计的思维框架第一范式第一范式确保关系中的所有属性列都是不可再分的原子性值。具体含义表中的每一个字段都不可再分。不允许在同一列中存储多个值例如一个“联系方式”字段不能包含“电话号码, 电子邮件地址”。不允许在表中创建“重复组”——即一个记录行中不能有多个重复的字段例如“产品1, 产品2, 产品3”举个例子来回答不允许在同一列中存储多个值比如说地址这个列你不能存储成广东省广州市xx区xx街道…这样整个字符串这样地址还可以再进行拆分而是你要拆成直到不能再进行拆分的原子字段比如省市区等等。一个记录行中不能有多个重复的字段比如说课程里面你不能同时记录数学语文等等而是应该分开多个行进行记录第二范式第二范式要求每一列(非主键字段)都完全依赖于主键具体含义如果一个表的主键是联合主键由多个列组成那么所有非主键列都必须依赖于整个联合主键。如果任何一个非主键列只依赖于联合主键中的部分列则违反了 2NF。这会导致“部分函数依赖”。举个例子来解释第二范式订单表里面就不能出现商品的库存信息因为商品的库存信息依赖于商品的ID而不依赖于订单ID。那么简单来说就是表里面的每个列都必须完全依赖于主键不管这个主键是联合主键还是独立主键不能出现部分依赖的情况否则就要拆分部分依赖的列到其他表里面去。再举个违反 2NF 的例子假设订单ID和产品ID组成联合主键订单ID产品ID订单日期产品名称产品价格1001A1012025-12-15笔记本电脑80001001B2052025-12-15鼠标1501002A1012025-12-16笔记本电脑8000问题产品名称和产品价格只依赖于产品ID(主键的一部分)与订单ID无关。这就是部分函数依赖第三范式第三范式每一列都必须直接依赖于主键而不能间接依赖主键即不能存在依赖传递。换句话说任何非主键属性不能依赖于其他非主键属性。具体含义消除传递函数依赖。即如果A → B A \rightarrow BA→B且B → C B \rightarrow CB→C其中A AA是主键那么C CC对A AA就是传递依赖需要消除举个例子来解释第三范式订单表里面有用户ID就不应该还冗余一列用户的注册时间。因为用户的注册时间依赖于用户ID(在订单表里面是非主键,在用户表里面是主键)所以用户的注册时间如果存在于订单表就是有间接依赖即依赖传递的情况。再举个违反 3NF 的例子假设客户ID是主键客户ID客户姓名所在城市城市邮编C001张三上海200000C002李四上海200000C003王五北京100000问题城市邮编依赖于所在城市而所在城市依赖于客户ID。客户 I D → 所在城市 → 城市邮编 客户ID \rightarrow 所在城市 \rightarrow 城市邮编客户ID→所在城市→城市邮编这就是传递函数依赖。每次有新的上海客户加入城市邮编都会重复存储。总结❤️在实际的数据库设计中通常会努力达到 3NF。然而有时为了提高查询性能可能会故意违反 3NF采用反范式设计。为业务做出的妥协是可以理解的我推荐大家可以利用DDD领域驱动设计的维度去结合三大范式来进行库表设计比如在订单领域地址就可以是订单表的列可以冗余。在用户领域地址就应该是一个实体可以进行增删改查和独立的业务意义有完整的生命周期。简单来说就是在用户领域地址应该被设置成一个单独ID的表而在订单领域地址只是一个值对象(无生命周期下单即固化类似于快照)什么该冗余什么不该冗余有了一个切合实际的思维框架而不是依赖于经验之谈对项目的可维护性会有很大帮助
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

做网站属于什么学科双体系建设网站

2025年12月WoS更新当地时间2025年12月15日,WoS数据库更新了SCI、SSCI、ESCI、AHCI期刊目录,详情如下:2本SCI、1本SSCI、10本ESCI期刊被踢除1、Journal of Molecular Liquids• ISSN:0167-7322• 影响因子:5.2• 分区&a…

张小明 2025/12/29 10:10:53 网站建设

怎么介绍自己的网站建设免费域名的选择方法

lidR激光雷达林业分析终极指南:从数据到决策的实战技巧 【免费下载链接】lidR Airborne LiDAR data manipulation and visualisation for forestry application 项目地址: https://gitcode.com/gh_mirrors/li/lidR 传统林业调查面临效率低下、精度不足的困境…

张小明 2025/12/29 10:10:18 网站建设

淘宝建设网站常见问题怎么做网页中不显示项目符号

第一章:Open-AutoGLM社区活跃度概述Open-AutoGLM作为一个新兴的开源项目,致力于构建自动化通用语言模型工具链,其社区活跃度直接反映了项目的可持续发展能力与开发者生态健康程度。自项目在GitHub上线以来,核心指标如星标数、提交…

张小明 2025/12/29 10:09:43 网站建设

中等职业学校网站建设模块做外单网站有哪些

一、设计背景与核心需求 在移动设备普及的场景中,有线充电存在线缆束缚、接口磨损等问题,而传统无线充电器缺乏储能功能,无法应对断电应急需求。基于51单片机的手机无线充电器系统锂电池存电系统,融合无线充电技术与锂电池储能功能…

张小明 2025/12/29 10:09:07 网站建设

网站备案很麻烦吗太原网站建设搭建

BiliBili-UWP:重新定义你的Windows端B站观影体验 【免费下载链接】BiliBili-UWP BiliBili的UWP客户端,当然,是第三方的了 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBili-UWP 还在为浏览器卡顿而错过精彩弹幕吗?Bi…

张小明 2025/12/29 10:08:32 网站建设

兼职做国外网站钻前天津建设工程交易信息网

在信息获取成本日益攀升的今天,技术工具为我们开辟了突破信息壁垒的新路径。Bypass Paywalls Clean作为一款高效的内容访问解决方案,通过智能算法重新定义了信息获取的方式。 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcod…

张小明 2025/12/29 10:07:56 网站建设