数据表设计时主键叫做 id 还是 userId 好呢?

查看 68|回复 5
作者:fengsi   
比如一张 User 表,主键命名为 id 还是 userId 好呢?
[ol]

  • 每张表都叫 id ,而不叫 xxxId,这样即使表名比较复杂也没关系。

  • 用户表跟实体映射时,如果表中是 user_id ,实体变量叫做 userId ,显然更清楚一点。而且也方便一些工具生成代码
    [/ol]
    还听说了一些其他方案:
    [ol]
  • 固定每张表都设计一个 id, 再根据需要再设计一个 userId ,这种的话按照我的业务来看,这个 id 好像确实比较多余。
    [/ol]
    请教大家的习惯的方案,目前我的方案是,数据表叫做 id ,实体对象变量叫做 userId 。外键叫做 user_id
    另外请教大家:有没有一些实际的设计规范可以参考的呢?
  • ysc3839   
    id
    ysc3839   
    id ,因为一般情况下根据上下文信息就能得知是 user.id 了。变量名也没必要用 userId ,用 user.id 即可,除非是 userId = user.id 这种情况。
    laikick   
    规定好就行. 别一下是 id 一下是 userId
    fengsi
    OP
      
    @ysc3839 #2 感谢前辈回复,学到了。我多问一句,变量名我用 userId 的原因是为了返回数据给前端考虑,返回 userId 前端就可以很清楚的这是 user 的 id 了,前辈是推荐直接返回 id 吗?
    ysc3839   
    @fengsi 前段也适合上述逻辑,比如是 getUser 的接口,那一般会写成 user = getUser(),那就能用 user.id 。如果是多种数据混合的话,可以看情况选择使用 userId 或者 user: { id }。
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部