0

参照テーブルとは、一種のエンティティ「タイプ」テーブルを指し、ストレージ テーブルとは、多くの変化する情報を格納するテーブルを指します。

例えば:

そのような名前の「ユーザー」テーブルがあります。これは、不確定な量のユーザーを保持できるため、ストレージテーブルです。

次に、ロール情報を保持する「ロール」テーブルがあります。これは、ロールごとに多くのユーザーがいるタイプテーブルです。

次に、「user」テーブルと 1 対 1 の関係を保持する「profiles」テーブルを作成します。

今、私はこれを試しました:

  • ユーザー
  • ユーザーロール
  • ユーザープロファイル

ただし、この規則は、ロール テーブルとプロファイル テーブルのそれぞれがユーザーと 1 対 1 の関係を持っていることを意味しますが、ロール テーブルはそうではありません。

私が説明した例のセマンティックな目的で、通常どのようにテーブルに名前を付けるのですか?

4

1 に答える 1

0

ここでは Oracle の規則がうまく機能します。

  • 通常のテーブルの場合は複数 (Users のテーブルの場合は Users。テーブル自体は多くのユーザーのストアであるため、その中のデータを説明するように名前を付けます)
  • User_Roles は、ロールの別個のリストになります。
  • User_Role_Assignments は、ユーザーの役割のリストです。ユーザーが任意のロールを持つことができ、ロールを任意のユーザーに割り当てることができる場合、ここで多対多が必要になると思います。
  • User_Profiles は、プロファイルの別個のリストになります。
  • ユーザーとプロファイル間の多対多の関係であるテーブルの User_Profile_Assignments。

1 対 1 の関係がある場合、テーブルの 1 つに他のテーブルへのキーが必要です。1 対 1 の関係がある場合、ユーザーには profile_id が必要です。

于 2012-10-27T22:38:32.563 に答える