我正在用 php mysql 开发一个用户评论系统。实际上,我的首选是使用 user_id(Primary Key) 来获取数据并将其插入到 mysql 中,但在某些地方我需要使用 user_name(Unique Index) 来从 mysql 中获取数据并更新或插入数据。
我想问一下哪种方式最有效?如果在某些地方,我必须使用 user_name 会影响效率吗?
最佳答案
您在 user_id 和 user_name 上都有索引,因此它们都会很快,一般来说(因为您没有提供这两个字段中使用的类型的详细信息),user_id 会更快,因为索引大小会更快逻辑上小于 user_name 字段 - 但你说的是微小的差异。
我可以有趣的是,user_name 实际上是他们的登录名而不是他们的真实姓名 - 因为由于冲突的可能性很高,在真实姓名上拥有唯一索引将会出现问题。如果是这种情况,您是否考虑过对名称进行哈希处理,然后将其用作索引?
关于php - 我应该使用 user_id (主键)还是 user_name (唯一索引)从 Mysql 插入和获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15335941/