标准化(主键的选择)
它正式的过程是一步一步审查实体的属性,为了避免异常独特的序列的增加,删除和修改观察。
目标
1)最小的重复和不一致的地方;
2)易于处理数据库;
3)的可维护性信息系统。
第一范式(1NF)
一个关系是在1NF,只有所有的基础领域,如果只包含唯一值(不包含重复的组)。
程序:
a)确定该实体的主键;
b)确定的重复组,并删除它从身体;
c)建立一个新的实体的主键重复之前的实体和组。
新的实体的主键,将获得由主键的原始实体和重复组串联。
例如:请求
(Numero_pedido; data_pedido; cod_cliente; customer_name; endereco_cliente;(codigo_produto; numero_produto; quantidade_produto; preco_produto; total_produto)total_pedido)
请求=>(numero_pedido; data_pedido; cod_cliente; customer_name; endereco_cliente)
Item_Pedido =>(numero_pedido; cod_produto; nome_produto;数量; preco_produto; total_produto)
函数依赖
一个给定的比R,属性X是功能依赖于R X r属性,只需要两个R序列结合的X值时,他们还与X的值相匹配
第二范式(2NF)
当且仅当它是第一个和所有非键属性都完全依赖主键(取决于对整个键,不只是它的一部分)的一个关系R是2NF。
程序:
a)确定的属性功能是不依赖整个主键。
B)删除确定了所有这些属性的实体,并与他们建立一个新的实体。
新的实体的主键,将其中的属性移除这些功能依赖的属性的属性。
产品=>(cod_produto,nome_produto,preco_produto)
传递依赖
设A,B和C三个十一个实体的属性 c根据是否取决于对C B和B,然后说传递依赖A。
第三范式(3NF)
一个关系r是只要你是在2NF和每个非键属性依赖于主键是不传递(每个属性是功能只有“的组件或所有的非键属性相互独立的主键属性依赖)在3NF 。
程序:
a)确定所有功能依赖于其他非键属性的属性;
二)将其删除,并创建一个具有相同的新的实体。
新的实体的主键,将删除属性功能依赖属性。
客户(cod_cliente; customer_name; endereco_cliente)
生产(cod_produto的; nome_produto; preco_produto)
请求(numero_pedido; data_pedido;






























还没有评论。