0

StackOverflow とまったく同じように、OpenId 登録のみを持つ Users テーブルを作成しようとしています。

テーブルに収納しています

  • OpenId 識別子 (ログイン名)
  • エイリアス (一般に表示される表示名)
  • その他の openId に関するもの

だから...私は、openId識別子とエイリアスを1つだけ持つシステム内のユーザーが1人だけであることを確認したいと思います。

もちろん、エイリアスはいつでも変更できます。また、いつでも openId 識別子を変更できました。これらが一意であること、または一度しか存在しないことを確認する必要があります。

SO... テーブルに 2 つの一意のキー インデックスを作成するか、または両方のフィールドを含む 1 つの一意のキー インデックスを作成しますか?

乾杯 :)

4

2 に答える 2

1

2 つの一意のキーを作成します。そうしないと、同じ openid に複数のユーザーを関連付けることができます。

于 2008-12-07T11:28:46.790 に答える
1

それぞれに 1 つ。

たとえば、2 つの異なる OpenID を持っている限り、同じエイリアスを持つ 2 人のユーザーを持つことができます。

でも:

  • 1 つのユーザー テーブルと、ユーザーが複数の OpenID を自分のアカウントにリンクできるようにする別の OpenID テーブルを作成することをお勧めします。たとえば、OpenID が Yahoo にあり、別の OpenID が MyOpenID にあるとします。何らかの理由で Yahoo が OpenID サービスを停止することを決定した場合でも、そのユーザーは MyOpenID ログインでログインできます。まあ、彼がそのIDを以前に彼のアカウントに登録していれば。
于 2008-12-07T11:29:18.673 に答える