3. SQL Server学习日记-关联式资料库-关联模型(二)

一、关联

1.一对一关联 (1 : 1)

资料表A的一笔记录,只能对应到资料表B的一笔记录,而资料表B的一笔记录,只能对应到资料表A中的一笔记录。
例如 : 一个人对应一张有效身分证,一张身分证也只对应一个人

2.一对多关联 (1 : N)

资料表A的一笔记录,可以对应到资料表B的多笔记录,但是资料表B的一笔记录,只能对应到资料表A的一笔记录。
例如 : 一个学生只能在一个班级,但一个班级可以包含多个学生

3.多对多关联 (N : M)

资料表A的一笔记录,能够对应到资料表B的多笔记录,而资料表B的一笔记录,能够对应到资料表A的多笔记录。
例如 : 选课系统中,一位学生可以选择多门课程,每门课程可以被多位学生选择

二、关联正规化

资料库中实体之间的关联是资料、数值之间的关联,如何定义这个关联会影响到之后操作资料的效率、準确性,于是有了正规化,正规化是透过修改资料以减少矛盾的一系列步骤,关联模型定义了3种正规化。

初始範例

客户代号客户姓名商品价钱数量购买日期订单编号0001Rose水煮蛋、黑轮10、152、29/201140002Irene蒟蒻1039/201150003Joy猪血糕、黑轮20、154、29/211160004Amy贡丸2059/211170004Amy贡丸2059/22118

《出现的问题》
△ 一个栏位出现多笔资料
△ 出现属性意义相同的栏位

1 第一正规化 1NF

原则
1 一个栏位只能有一笔资料
2每列资料里的同一属性包含的数值数量需一样多
3多个属性的意义不能相同

经过第一正规化之后

客户代号客户姓名商品价钱数量总金额购买日期订单编号0001Rose水煮蛋102209/201140001Rose黑轮152309/201140002Irene蒟蒻103309/201150003Joy猪血糕204809/211160003Joy黑轮152309/211160004Amy贡丸2051009/211170004Amy贡丸2051009/22118《出现的问题》△ 有太多重複资料

2 第二正规化 2NF

原则
1 消除部分相依
2满足第一正规化

经过第二正规化之后

客户代号客户姓名数量总金额购买日期订单编号0001Rose2209/201140001Rose2309/201140002Irene3309/201150003Joy4809/211160003Joy2309/211160004Amy51009/211170004Amy51009/22118商品价钱水煮蛋10黑轮15蒟蒻10猪血糕20贡丸20

3 第三正规化 3NF

原则
1消除递移相依
2满足第二正规化

经过第三正规化之后

订单资料表

编号购买日期订单编号客户代号商品数量总金额19/201140001水煮蛋22029/201140001黑轮23039/201150002蒟蒻33049/211160003猪血糕48059/211160003黑轮23069/211170004贡丸510079/221180004贡丸5100

客户资料表

客户代号客户姓名0001Rose0002Irene0003Joy0004Amy

商品资料表

商品价钱水煮蛋10黑轮15蒟蒻10猪血糕20贡丸20

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章