標準化(主キーの選択)
それはユニークな配列の付加、削除、および変更で観察された異常を避けるために、エンティティの属性を調べるためにステップバイ正式なプロセスステップである。
目標
1)重複や矛盾の最小化;
2)データベースの取り扱いを容易に。
3)保全情報システム。
第一正規形(1NF)
すべての基本的なフィールドが一意の値のみを(繰り返しグループが含まれていません)が含まれている場合にのみ関係が1NFである。
手順:
1)エンティティの主キーを識別します。
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属性が2つのR配列がXの値を結合するとき、彼らはまた、Xの値と一致している場合にのみ必要です
第二正規形(2NF)
それが最初であり、すべての非キー属性が主キー(キー全体ではなく、それのほんの一部に依存)に完全に依存している場合に限り、関係Rは2NFである。
手順:
1)主キー全体に機能的に依存しない属性を識別します。
b)すべてのこれらの属性を識別したエンティティを削除し、それらと新しいエンティティを作成します。
新しいエンティティの主キー属性が機能的に依存している属性を削除しているから属性となります。
製品=>(cod_produto、nome_produto、preco_produto)
推移的な依存
エンティティは、XのA、B、Cの3属性ましょう C B AとBがCに依存するかどうかに応じて、次に推移依存Aに言われています
第三正規形(3NF)
あなただけが2NFにあり、すべての非キー属性が主キーに依存している推移(各属性は、コンポーネントのみのまたはすべての非キー属性が互いに独立である場合は、主キー属性に関数従属である)されていない場合、関係Rは、3NFである。
手順:
a)他の非キー属性に機能的に依存しているすべての属性を特定する。
b)にそれらを削除し、同じ名前の新しいエンティティを作成します。
新しいエンティティの主キー属性が機能的に依存している削除された属性になります。
顧客(cod_cliente、CUSTOMER_NAME。endereco_cliente)
製品(cod_produto。nome_produto。preco_produto)
要求(numero_pedido。data_pedido。






























コメントはありません。