回答

收藏

DB:是否使用身份列?

技术问答 技术问答 262 人阅读 | 0 人回复 | 2023-09-14

在设计表格时,我的同事,我应该避免使用它Identity列,因为它是专门针对的SQL Server和MS Access,但是我和他的观点不一样,因为它让我的编码更简单。: E) m+ ?7 T' N% `) s
我应该使用身份列吗?如果不是,从应用程序代码创建标识列的最佳方法是什么?
! g" H3 N' Q% t2 u1 }; i+ K! ]                                                               
* t9 r1 u( n! n; `9 n3 p) Z* z) W    解决方案:                                                               
: Y  G( r( t% r+ v3 F. s                                                                您无法将应用程序与数据库供应商完全分开。如果这样做,您将无法利用数据库提供的任何功能。" R3 q" |* |8 t) c; w6 ]
我会说使用身份列。例如,如果你迁移到Oracle,则可以使用Sequence。变化很小。" U4 q. ^* O4 N  k/ M
我不知道你使用什么技术,但有一种有用的方法可以使用,比如Hibernate或iBATIS之类的工具(我认为它们都可用于Java和.NET)将您与数据库区分为细节。然后,如果您更改数据库供应商,您只需更改配置,无需更改应用程序代码。(至少在理论上!)
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则