一张User表,包含ID列和UserName列,
ID列是自增列,UserName列又是不能重复的列,
这种情况下,怎么设置主键?
------解决思路----------------------
自增列就是主键,只有主键才能自增
在 UserName 列上键唯一索引,当有不唯一数据时将报错
------解决思路----------------------
我觉得id靠谱一点啊
看Username这个字段名,就感觉以后总会有重复的
------解决思路----------------------
你可以设置UserName有唯一性约束,至于要不要弄它为主键随便你
------解决思路----------------------
反正这年头设置了主键,但聚集索引不在主键上的事情也不少见
------解决思路----------------------
肯定是Id列。可以在用户 注册的时候 加个UserName判断,提示给用户。
------解决思路----------------------
用户都是以UserName和密码登录的
------解决思路----------------------
你这情况很典型啊,做会员系统都是这样的,都需要先查询一次的,这不是从技术角度考虑是否合理,而是从业务角度去这样设计的,注册时填写一个用户名,当鼠标离开文本框的时候就需要提示是否可注册该用户名,这一步已经存在了一次查询,同时你插入时还要做一次查询判断,这只在新增时会有这样的情况,这一字段一般需要建立索引,所以过程会非常快。