范式之子

我妈姓范,所以我就是范式之子。

第一范式,属性不可再分。比如地址填“湖南长沙”就不太好,要拆成两个属性,省份和城市。
第二范式,不适用组合主键。消除了部分依赖。
http://www.php100.com/html/webkaifa/PHP/PHPyingyong/2009/0830/3245.html
在这里主属性A和非主属性C重合了。wrong
添上ID作为独立主键之后,满足第二范式了,但是还是不满足第三范式。
解决了这个问题,就满足了第三范式了。办法是拆分为两个表。

第二范式(2NF)要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性。所以组合主键就不行了。

http://blog.csdn.net/kaiwii/article/details/7365758
http://www.cnblogs.com/cgli/archive/2011/01/23/1942557.html
http://www.cnblogs.com/ulli/archive/2012/02/26/2367910.html

时间: 2024-10-06 19:08:00

范式之子的相关文章

数据库范式的设计

数据库范式的设计     关系数据库就是通过二维表(行和列)来保存数据. 实体:现实世界中客观存在并可以被区别的事物.比如"一个学生"."一本书"."一门课"等等.值得强调的是这里所说的"事物"不仅仅是看得见摸得着的"东西",它也可以是虚拟的,不如说"老师与学校的关系". 属性:教科书上解释为:"实体所具有的某一特性",由此可见,属性一开始是个逻辑概念,比如说,&qu

算法范式

算法:按步骤解决问题的过程. An algorithm is a step-by-step procedure for solving a problem. 范式:思考问题的模式. "Pattern of thought" which governs scientific apprehension during a certain period of time. 算法范式:为问题构建高效解决方案的常规方法. General approaches to the construction

MYSQL学习笔记——数据库范式及MYSQL优化整体思路

一.数据库范式                                                                               为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 1.1.第一范式(1NF:每一列不可包含多个值)      所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列

区块链对人工智能的变革:去中心化将带来数据新范式

区块链对人工智能的变革:去中心化将带来数据新范式 2017-01-03 14:59:27  来源:网络大数据  CIO时代抢沙发 摘要:本文基于我个人在人工智能和区块链研究方面的经验,描述了区块链技术可以如何辅助人工智能.二者结合一处即发!区块链技术--尤其是行星尺度的--可以帮助实现人工智能和数据团体长期以来的一些梦想,并打开一些机会.关键词: 区块链 人工智能 近年,从围棋到人类水平的语音识别,人工智能(AI)研究者终于在他们几十年一直努力探索的领域取得了突破.取得突破进展的关键一点是研究者

SQL 范式(转载)

装载于"http://www.cnblogs.com/KissKnife/ 理论性的东西,往往容易把人人都看得懂的东西写成连鬼都看不懂,近似于主任医生开的药方.从前学范式的时候,把书中得概念翻来覆去看,看得痛心疾首深恶痛绝,再加上老师深切误导,最后一塌糊涂.借助网络资源,自己写了一篇,自己是看懂了,希望对大家也有所帮助,有错误帮忙指正. 数据库范式(Normal forms):是用于规范关系型数据库设计,以减少谬误发生的一种准则. 1NF(first normal form):  Table f

转载:数据库范式

数据库范式——通俗易懂[转] (2012-04-02 21:15:43) 数据库范式是数据库设计中必不可少的知识,没有对范式的理解,就无法设计出高效率.优雅的数据库.甚至设计出错误的数据库.而想要理解并掌握范式却并不是那 么容易.教科书中一般以关系代数的方法来解释数据库范式.这样做虽然能够十分准确的表达数据库范式,但比较抽象,不太直观,不便于理解,更难以记忆.       本文用较为直白的语言介绍范式,旨在便于理解和记忆,这样做可能会出现一些不精确的表述.但对于初学者应该是个不错的入门.我写下这

【SqlServer系列】子查询

1   概述 1.1  已发布[SqlServer系列]文章 [SqlServer系列]SQLSERVER安装教程 [SqlServer系列]数据库三大范式 [SqlServer系列]表单查询 [SqlServer系列]表连接 1.2  本篇文章内容概要 子查询和表连接,主要是针对两张及以上表之间关联关系进行查询.子查询,按是否独立划分,分为独立子查询和相关子查询:按内部查询返回是否为单值,分为单值子查询(注意:应理解单值子查询和标量子查询关系)和多值子查询:如下表格内容为按子查询是否独立来划分

SQL 基础之使用子查询检索数据(二十二)

多列子查询 where (manager_id, department_id) in 子查询 100 90 102 60 124 50 主查询的每行都与多行和多列的子查询进行比较 列的比较 多列的比较,包含子查询可以是: 不成对比较 成对比较 成对比较子查询1.显示与员工名为"John"同部门且同一个经理的其它员工信息 select employee_id, manager_id, department_id from empl_demo where (manager_id, depa

[转]数据库范式的设计

数据库范式的设计     关系数据库就是通过二维表(行和列)来保存数据. 实体:现实世界中客观存在并可以被区别的事物.比如“一个学生”.“一本书”.“一门课”等等.值得强调的是这里所说的“事物”不仅仅是看得见摸得着的“东西”,它也可以是虚拟的,不如说“老师与学校的关系”. 属性:教科书上解释为:“实体所具有的某一特性”,由此可见,属性一开始是个逻辑概念,比如说,“性别”是“人”的一个属性.在关系数据库中,属性又是个物理概念,属性可以看作是“表的一列”. 元组:表中的一行就是一个元组. 分量:元组