首页 > 编程知识 正文

关系型数据库主键和外键,数据库主键自增

时间:2023-05-05 03:58:53 阅读:162794 作者:3191

我很久没有写博客了。 从最后发表的文章到现在已经有两个多月了。 我一直想写点什么,但一直没有时间。 随笔内容是工作学习的总结,是经验的分享,也是自己成长的一面镜子。 那么,因为措辞是正确的,所以这次我们来谈谈数据库设计中主键字段类型的选择。

在进行web开发时,经常与数据库进行交互,选择数据库的主键也很重要。 如何选择数据库键字段的类型,主要考虑以下几个方面。

1 .首先满足商业需求是设计中的重要出发点

2 .数据库迁移问题考虑到后期是否频繁迁移,数据库的唯一性较高

3 .程度中使用是否更简单、易用(例如分页一般基于主键查询进行分页) )。

4 .数据库查询的效率在主键是外键链表的查询时

综上所述,数据库的主键字段类型通常设计为int或GUID或自定义格式类型,下面将详细说明这些差异和应用情况

1 .将主键字段类型设置为int类型

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

2 .将主键字段类型设置为GUID类型

这主要考虑了对数据的强唯一性要求,例如用户表的所有主键类型都设置为GUID,其他表的所有主键类型都设置为GUID,必须严格避免重复数据和便于定位。 要频繁迁移数据,对于int类型,如果您有一些类似于表餐的数据,这些数据容易混淆,并且可能需要合并这些数据或进行其他处理,则GUID类型是最佳选择

总结:

使用GUID。 没有重复问题,数据整合非常简单。 关联速度比int慢。 要通过频繁合并数据或脱机输入数据来在线上传,建议使用此方案。

guid的值是随机的,对用户来说更有意义的格式是不能接受的。 不适合现有的按循环顺序递增索引键值的APP应用程序,因为无法确定生成guid值的顺序

这两个方案根据需要选择。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。