感谢你们所有人的回答。
我边学边学--所以我在学习,但还有很长的路要走。对于工作,我们主要使用MySQL进行数据库- web开发。我有一个关于唯一索引的问题--何时正确使用它们以及如何使用它们。
我确信我非常理解它们的用途--将一个列声明为“非重复”列,也就是说,对于该特定列,表中不能存在两个值。如果尝试执行的插入/更新操作违反了该索引规则,则会失败。
我正在为一个站点创建一个用户系统,并且正在为该系统设计数据库表。一个表是"user“表-保存用户
users
-----------------
int(4) usersID primary key
varchar(255) lastName
varchar(255) firstName
varchar(255) email unique
varchar(255) password我已经创建了一个唯一的索引‘电子邮件’,因为每个电子邮件必须是不同的每个用户-它将被用作他们的登录。然而,我也想为‘姓氏’,‘名字’和‘电子邮件’创建一个唯一的索引,因为没有两个用户应该有这三个相同的组合。我应该为该规则创建另一个唯一索引,还是只为这三个规则创建一个索引?在索引中重复列是不好的吗?
发布于 2009-08-20 13:43:39
虽然在某些情况下,在多个索引中包含一列并不是坏事,但对于您要做的事情来说,这是多余的。
由于您不允许电子邮件地址重复,因此没有人能够提交重复的first/last/email,因为它将无法通过对电子邮件的唯一检查。
https://stackoverflow.com/questions/1306274
复制相似问题