主键类型:int vs long

Tom*_*ker 27 java int persistence primary-key long-integer

我知道一些软件商店已经通过使用int类型作为持久类的主键来烧毁.话虽如此,并非所有表格都超过20亿.事实上,大多数人没有.

那么,你们是否只将long类型用于映射到潜在大表的类或者每个持久类只是为了保持一致?什么是行业共识?

我会暂时搁置这个问题,以便您与我们分享您的成功/恐怖故事.

pst*_*ton 22

即使表不会变得超大,但是具有高周转率,即如果频繁删除/插入行,则Long可能是有利的.当表格保持较小时,您的自动生成/顺序唯一标识符可能会增加到一个较大的数字.

我通常使用Long,因为在我的大多数项目中性能优势都不明显,但是由于溢出而导致的错误会非常明显!

这并不是说Int对于其他人的场景来说不是更好的选择,例如数据处理或复杂的查询系统.只需清楚风险/收益以及它们如何影响您的特定项目.