大家觉的表的主键名字用id好,还是表面_id好?给个意见呗?
我在开发开源软件Java的时候看见表的主键都是“表面_id”,表的主键使用“id”,哪一个更加合理一点啊
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2013-03-28
大家觉的表的主键名字用id好,还是表面_id好?给个意见呗?
我在开发开源软件Java的时候看见表的主键都是“表面_id”,表的主键使用“id”,哪一个更加合理一点啊 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2013-03-28
你觉得喝粥,是放点豆子好,还是什么都不放好?给个意见 吧?
|
|
返回顶楼 | |
发表时间:2013-03-29
我觉得id好
|
|
返回顶楼 | |
发表时间:2013-03-29
建议pk打头 比如 表名是cost 那么主键 pk_cost_id,总之有规范就行。
|
|
返回顶楼 | |
发表时间:2013-03-29
sqlite 好像用_id(必须)
mysql 无所谓自增就好 |
|
返回顶楼 | |
发表时间:2013-04-12
其实这是一个很重要的问题。
说白了,是概念模型中如何查找一个对象(或一条记录)的问题。 表名_ID,可以全局检索对象。 ID, 则在各表之间重复。 比如,我上层有一个应用,需要显示所有表,每条记录进行展示。我肯定得在应用层存储ID,这个时侯,如果是表名_ID,则应用层设计起来容易得多。 |
|
返回顶楼 | |
发表时间:2013-04-26
这个问题属于数据库设计命名规范的问题,我见过的项目,有所有主键统一叫 id 的,结果一个主键在其他表中出现的时候,就是另外一个名称了,在sql的结果列中出现的时候,也需要起别名,这样系统中就能见到各种类似以下的代码:
select A.id aid, B.id bid, C.id cid, D.id did from A,B,C,D where B.aid = A.id and C.bid = B.id and D.cid = C.id; 还有就是表名_id 模式的,这样一个主键在其他表中出现的时候,字段名基本上是一致的,sql 语句中也不需要用别名。 个人比较倾向于第二种。 其他类似的,还有表名以“T_”开头,视图名以“V_”开头,感觉都是很别扭的命名规范。 数据库设计的时候,如果用英文单词命名,最好就统一都用英文单词,不要出现中文拼音或拼音缩写。 我还见过一个税务系统的数据库,统一用中文拼音缩写命名表名和字段名的,因为有一个统一的规范,感觉也没问题。 具体数据库的命名规范,有一本书《SQL编程风格》,可以看下。 附下载地址:http://down.51cto.com/data/414364 |
|
返回顶楼 | |