设计表时,ID字段在数据库中设置为自增好吗?能详细说明原因吗?

设计表时,ID字段在数据库中设置为自增好吗?能详细说明原因吗?,第1张

设计表时对于唯一标识字段根据数据表的增长情况可以选择是自增还是NEWID(SQLSERVER);自增整型字段对于表数据行很大的情况下不建议用,因为总会有数值不够用的时候;但自增字段有个好处,对于流水记录可以很方便记录顺序记录;另外时间戳也是个不错的选择;

另外选择NEWID(SQLSERVER)即GUID,唯一标识号,为字符串类型,这个有个好处就是不用担心字段值不够用,但此字段值占用表存储空间较大,在SQLSERVER中查询效率与自增列基本一样;一般用于关心顺序,但需要唯一标识一笔记录行,且数据表很大的情况,当然也可以什么表都使用此类型来做唯一标识(不考虑存储空间的话);

另外自增数值列可以用作表分区的方案,如(每100万分一个表),但NEWID不行;

(希望此信息对你有用)

使用数据库自增:

优点:

不需再额外控制,自动实现,安全,高效。

缺点:

没法控制ID的值。

使用程序控制:

优点:

可以控制ID的值,比如按日期200903290001 这样,使人一看就知道是哪一天,如果对日期要求不是很高的表,完全可以放在ID里,不需要另放一个字段。

缺点:

需要在程序里写代码去插入,要保证唯一性,有时需要用存储过程来做。会增加数据库负担和风险。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9235736.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存