<script type="text/javascript">
</script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
ListenSoftware 解决方案“ HowTo” 系列1: 范式大纲
总则
下面的 范式大纲通常意味着以较少的列将表分成两个或更多的表,在较小的表中主外键关联.因此它们可以通过join操作符重新连接。分割表的优势在于减少数据冗余。
下面是标准范式的简要概述:
第一范式
对于表中的每一行,必须且仅仅有唯一的行值.在一行中的每一列仅有唯一的值并且具有原子性.
第二范式
第二范式要求非主键列是主键的子集,非主键列活动必须完全依赖整个主键。主键必须有唯一性的元素,一个主键可以由一个或更多的组成唯一值的列组成。一旦创建,主键无法改变,外键关联一个表的主键。主外键关联意味着一对多的关系.
第三范式
第三范式要求非主键列互不依赖.
第四范式
第四范式禁止主键列和非主键列一对多关系不受约束
第五范式
第五范式将表分割成尽可能小的块,为了排除在表中所有的冗余.
(待续)
<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript">
</script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
ListenSoftware 解决方案“ HowTo” 系列1: 范式大纲
总则
下面的 范式大纲通常意味着以较少的列将表分成两个或更多的表,在较小的表中主外键关联.因此它们可以通过join操作符重新连接。分割表的优势在于减少数据冗余。
下面是标准范式的简要概述:
第一范式
对于表中的每一行,必须且仅仅有唯一的行值.在一行中的每一列仅有唯一的值并且具有原子性.
第二范式
第二范式要求非主键列是主键的子集,非主键列活动必须完全依赖整个主键。主键必须有唯一性的元素,一个主键可以由一个或更多的组成唯一值的列组成。一旦创建,主键无法改变,外键关联一个表的主键。主外键关联意味着一对多的关系.
第三范式
第三范式要求非主键列互不依赖.
第四范式
第四范式禁止主键列和非主键列一对多关系不受约束
第五范式
第五范式将表分割成尽可能小的块,为了排除在表中所有的冗余.
(待续)
<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript">
</script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>