java - 面试时候问:数据库设计范式的理解
阿神
阿神 2017-04-18 09:36:05
0
3
474

如题,面试的时候,被问到:数据库设计范式的理解?只记得在大学的离散数学中学过第一范式,第二范式,这些定义,工作中还没有舍身处地的使用过这些范式,也不知道在表结构的设计当中,应当如何注意这部分的内容?

麻烦这方面的大神指点一二,非常感谢~~~

阿神
阿神

闭关修行中......

全員に返信(3)
Peter_Zhu
  • 第一正規形: すべてのフィールド値は 非分解原子値です。 人事情報住所 などのフィールドは、住所が州、市、その他のフィールドに細分化される可能性があるため、第 1 正規形を満たしません。

  • 第 2 正規形: 各列は主キー に関連付けられており、主キーの特定の部分 (結合主キー) にのみ関連付けることはできません。

  • 第 3 正規形: 第 3 正規形では、データ テーブル内のデータの各列が と主キー に直接関連付けられており、間接的に関連付けることはできないことを保証する必要があります。

いいねを押す +0
小葫芦

実際、パラダイムは 3 つだけではなく、学校では 3 つの主要なパラダイムのみを教えています。
理解のパラダイムとしては、次のような側面から始めることができると思います

パラダイムの役割

  • データの冗長性を減らし、ハードディスクの占有量を減らし、ストレージ効率を向上させます (パラダイムが登場した時代には、ストレージ スペースはまだ非常に高価でした)

  • データの一貫性を高めます。

  • 理解しやすいための要約 (エンティティと関係)

パラダイムの欠点

  • クエリと取得の難易度が上がります (関連付けが多すぎるため、SQL を書くことを考えるのは気が狂いそうです)

  • クエリ効率が低い

アンチパラダイムの出現

  • データクエリを高速化するために冗長データを使用して、第 1 または第 2 正規形に非正規化します

  • ストレージ効率は低いものの、現在のストレージスペースのコストは依然として比較的低いです。

  • クエリ速度が向上し、低価値データが冗長化され、クエリ データが大幅に改善されます

パラダイムフリーの出現

  • ドキュメント データベース (例: mongodb) の出現は、リレーショナル データベースに明らかな影響を与えています。

私が書いたのは以上です。間違っていたら教えてください。

いいねを押す +0
左手右手慢动作

3 つの主要なパラダイムは、定義と同じように使用できます。
つまり、データベース テーブルを設計するときに考慮すべき最も基本的なことは、最初のテーブル フィールド、つまり、データベース テーブル内のフィールド。一般に、抽象フィールドは考慮されません。つまり、住所 (詳細ではない)、情報 (詳細ではない) などの細分化できるフィールドは考慮されません。住所は、国および都市固有に細分化できます。
フィールド相関、なし 冗長、テーブルは独立しており、関連する属性は関連付けられているため、テーブルは統合され、適切にマップされません。たとえば、ユーザー情報テーブルには購入レコードがあり、注文テーブルには年齢が混在しています

最後のパラダイムは直接相関です。パラダイムは昇順であると考えられ、最初の 2 つのパラダイムが満たされ、次に 3 番目のパラダイムがテーブル内のデータが相互に直接関連しているかどうかが考慮されます。フィールドに直接の依存関係があるかどうか。依存関係がある場合、それらは通常考慮されません

一部の特殊なケースでは、3 つの通常形式とは逆のテーブル構造を設計できます。ここでは詳しく説明しません。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!