第4正規形(4NF)
4NFとは何ですか?
4NFは、1NF、2NF、3NF、およびBoyce-Codd正規形の後にあります。 1977年にRonaldFaginによって導入されました。
4NFにするには、リレーションはBouce-Codd正規形である必要があり、複数の複数値属性を含めることはできません。
例
例を見てみましょう-
<映画>
Movie_Name | Shooting_Location | リスト |
MovieOne | 英国 | コメディ |
MovieOne | 英国 | スリラー |
MovieTwo | オーストラリア | アクション |
MovieTwo | オーストラリア | 犯罪 |
MovieThree | インド | ドラマ |
上記は4NFには含まれていません。
- 複数の映画に同じリストを含めることができます
- 多くの撮影場所で同じ映画を撮影できます
上記の表を4NFに変換してみましょう-
Movie_Name | Shooting_Location |
MovieOne | 英国 |
MovieOne | 英国 |
MovieTwo | オーストラリア |
MovieTwo | オーストラリア |
MovieThree | インド |
Movie_Name | リスト |
MovieOne | コメディ |
MovieOne | スリラー |
MovieTwo | アクション |
MovieTwo | 犯罪 |
MovieThree | ドラマ |
これで違反が削除され、テーブルは4NFになります。
-
第3正規形(3NF)
3NFとは何ですか? 正規化の3番目のステップは3NFです。 リレーションが2NFにあり、推移的な関数従属性がない場合にのみ、テーブルは3NFにあります 例を見てみましょう- 例(テーブルは3NFに違反しています) Movie_ID Listing_ID Listing_Type DVD_Price ($) 0089 007 コメディ 100 0090 003 アクション 150 0091 007 コメディ 100 上記の表は、推移的な機能依存性
-
Djangoのフォームウィジェット
この記事では、Djangoフォームでウィジェットを使用する方法を説明します。ウィジェットは、フロントエンドを改善するのに非常に役立ちます。ウィジェットは、Djangoフォーム、テキストエリア、入力、パスワード入力などからレンダリングされるhtml要素であり、すべてウィジェットです。 まず、Djangoプロジェクトとアプリを作成しましょう。 tutorial14という名前でプロジェクトを作成しました djangoFormWidgetという名前のアプリ 。 settings.pyにアプリを追加します プロジェクトのurls.py。にアプリのURLを含めます テンプレート、 home.