我是靠谱客的博主 孝顺向日葵,最近开发中收集的这篇文章主要介绍关于id的设计,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这么小的话题也拿出来写篇post,大家别笑我。

最近不少文章提出了pid uid等等不同的id,大部分都是针对dz等论坛的比如板块id,帖子id之类的

这里我要说的也是这个问题,不过并不针对某款具体产品,而是和数据类型有关

 

关于数据库id的设计,通常我们用一个唯一数做主键,我们可以采用以下类型

int 10进制整数,短小,好记,在某一个表中可以唯一,并且自增长

timestamp 16进制数,记忆力好点的能记住,有规律但不明显,根据当前时间生成,在当前主机上是唯一的

uniqundifier 分段16进制数,记不住,有规律但更加不明显,权当无规律看待,全世界独一无二

 

如果我们用int,就可以用pid表示列名,表示primary key

如果用timestamp,可以用tid或者sid,这个时候已经超出primary key的范畴了,虽然在当前表中可以当做primary key来用

如果用uniqundifier ,可以用uid来表示,就好像thinkpad电脑主板的uuid一样,独一无二,当然也可以当做primary key来用

 

这些是习惯,如果觉得合理就借鉴一下,我以前都用id作为列名,不管是什么类型的,以后用这种形式命名应该能直观看出id的唯一范围来,毕竟同一个数据库不同的表根据需要有的时候用不同的类型做主键

转载于:https://www.cnblogs.com/zeiss/archive/2009/12/31/1636535.html

最后

以上就是孝顺向日葵为你收集整理的关于id的设计的全部内容,希望文章能够帮你解决关于id的设计所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部