问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

主键设计用什么字段类型比较好

发布网友 发布时间:2022-04-08 10:28

我来回答

2个回答

懂视网 时间:2022-04-08 14:50

很久都没有写过博客了,从最后一次发表的文章到现在已经是两个多月的时间了,一直都想写点什么,可一直没有时间(其实都是借口),随笔内容无疑就是工作学习中的总结,经验的分享,也是自己成长的一面镜子,好了,言规正传,这次谈谈在数据库设计中主键字段类型的选择。

做web 开发时,经常要与数据库交互,数据库主键的选择也犹为重要,怎么么选择数据库主键字段的类型,主要从以下几个方面考虑:

1. 首先要符合业务需求,这是设计中重要的出发点

2. 数据库的迁移问题,考虑在后期是否要经常迁移,数据库高度唯一性

3.程度中的使用是否更简单,易用(比如分页,一般是根据主键查询来分页的)

4.数据库查询的效率,在主键做为外键链表查询的时候

 

根据以上的情况,通常数据库主键字段的类型常被设计成 int 或 GUID 或自定义的格式类型,以下详细说明这几种的区别和应用的场合

 

1. 主键字段类型设置成 int 类型

   这种情况主要考虑到程序的分页,排序(按主键字段的递增或递减),简洁易懂,同时可加rowguidcol列,如果是SQL 2005可以使用NewSequentialid()来顺序生成,为同步做准备,数据合并时也可以作为参考。主从表关联速度会快一点。小库推荐。

 

2.主键字段类型设置成 GUID 类型

  这种情况主要考虑到对数据有强烈的唯一性要求,比如用户表的主键类型都被设置成 GUID,其它的表的主键类型也都应该设置成GUID,严格避免数据重复,并易于定位;数据要经常迁移,如果是 int 类型,容易造成混乱;有若干个表饮食类似的数据,有时要对这些数据做合并或其它处理,这时GUID 类型是最好的选择

 

总结:

使用GUID。不存在重复问题,数据合并时非常简单。关联速度比int慢。经常合并数据或脱机输入数据联机上传最好用此方案。
guid  数值是随机的,而且不接受可以对使用者更具意义的任何形式。没有办法判定产生 guid 值的顺序,所以不适合用于现有依循环次序递增索引键值的应用程序

这两方案根据不同需求选择。

 

数据库设计中主键字段类型的选择

标签:

热心网友 时间:2022-04-08 11:58

int范围太小了,存的数据不够多。而如果一定要用varchar类型的字段做主键,通常说明这个字段含有业务含义,且业务能保证该字段唯一。
一般来说,long是最广泛的,性能好,且能通过自增序列来赋值,方便开发。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么能快速杀死蟑螂 The Best Mistake I'Ve Ever Made的歌词 王若琳的 the best mistake i've ever made 歌词的中文翻译..._百度... 1978年三月十三日出生的幸运数字是多少?和幸运花或者植物是什么?_百度... 1979年4月9日女幸运数字是什么 qq远程控制怎么弄qq远程控制 qq远程控制在哪怎么弄? 拿了中药怎么煎怎么服 中医药怎么煎服 大腿根肉怎么瘦 电信itv错误代码010100是什么意思? 使命召唤ol错误代码100 剑灵进入游戏后提示错误代码100是什么意思? 会声会影打不开了 错误代码100 应用服务器在处理客户端请求时返回状态代码 100.此情况的原因是什么 工行交违章罚款显示交易异常,错误代码100,财务编号不正确怎么回事 爱思助手数据加载失败错误码-100 error (100)错误代码100-游戏没有起动有跳出 错误代码100 电脑打开网页出现访问页面出错代码100什么意思 手机连不上wifi错误代码一100 错误代码100什么意思 播放出现错误代码是100,怎么回事? 网络错误代码100是什么意思 中国的大好河山有哪些(详细介绍) 大好河山居家旅行社正规吗? 北京大好河山国际旅行社有限公司怎么样? 大好河山陪你跨年下联是? 钻石烟大好河山6901028079938多少钱? 大好河山高维岳香烟多少钱 大好河山奥运版价格 跟我有得一拼呢是什么意思? "和……有得一拼"是什么意思 你男人发际线跟我有得一拼[捂脸]这话是什么意思? 朋友说一个女的长得很乖,跟我有得一拼,他什么意思? 国庆期货交易市场的具体开市时间 “陈一长得漂亮哦。跟王紫比,有得一拼哦。”这话什么意思???到底哪个漂亮些??? 猥琐男是不是和吊丝有得一拼啊,猥琐男是不是动作很难看,长相也很难看的男人啊 还是什么意思啊 ??? 国庆节怎么做期货? 有个男人在朋友圈里说:仕宦当作执金吾,娶妻当得阴丽华。是什么意思? 送酒有什么讲究和意义 你是怎么评价《烈火如歌》和《幻城》的?它们有得一拼吗? 白羊女要是腹黑起来跟哪个星座女有得一拼 中学生励志故事 考研成绩复核有用吗,请各位有经验的大哥拜托说一下吧,关系重大,会不会... 考研成绩复查有必要吗?复查成功加分概率高吗?会不会越查越少? 考研成绩复核有成功的吗? 考研成绩复核有成功案例吗 考研复核是什么行为?真的会有成功的吗? 考研成绩有疑问该如何申请复核 考研成绩申请复核有用吗