我需要为此表格提供一个或两个唯一键索引吗?

时间:2008-12-07 11:24:44

标签: sql-server indexing openid unique-key

我正在尝试创建一个只有OpenId注册的Users表,就像StackOverflow一样。

我正在存储在表格中

  • OpenId Identifier(他们的登录名)
  • 别名(显示给公众的显示名称)
  • 其他一些openId东西

所以...我想确保系统中只有一个用户具有openId标识符且只有一个别名。

当然,我可以随时更改别名。我也可以随时更改我的openId标识符。我需要确保它们是唯一的/仅存在一次。

SO ...我是否为表创建两个唯一键索引,或者为其中的两个字段创建一个唯一键索引?

干杯:)

2 个答案:

答案 0 :(得分:1)

制作两个独特的键。否则,相同的openid可以有多个用户关联。

答案 1 :(得分:1)

每个人一个。

如果您只创建一个包含两者的用户,那么只要他们有两个不同的OpenID,就可以创建两个具有相同别名的用户。

然而:

  • 我建议您创建一个用户表和另一个OpenID表,允许用户使用他们的帐户链接多个OpenID。比方说,他们在雅虎有一个OpenID,在MyOpenID有另一个。如果 - 由于任何原因 - 雅虎决定关闭它的OpenID服务,该人仍然可以使用他的MyOpenID登录登录。好吧,只要他早些时候用他的账户注册了这个ID。