kac*_*apy 11 sql-server-2005 sql-server uniqueidentifier identity functions
我正在争论是否最好PRIMARY KEY
使用Identity Columns,我们使用显式生成唯一 id 的 UDF 。
ID_Value
由1
id+1
在插入时让表做一个哪个实现更有意义?
mrd*_*nny 11
使用标识值。生成您自己的序列表和序列值将占用大量开销,并在尝试生成数字时导致大量锁定和阻塞。
身份存在是有原因的,使用它。
当 SQL Denali 出现时,它将支持比身份更高效的序列,但您无法自己创建更高效的东西。
至于将记录从一个环境移动到另一个环境,要么在插入时打开 IDENTITY_INSERT,要么选中 SSIS 中的框。
身份栏对我来说听起来不错。我不确定我是否遵循了为什么在服务器之间移动数据很困难的逻辑。
如果您确实希望每一行都具有全局唯一标识,则可以使用 UUID,但除非您确定全局唯一性是必要的,否则我不会这样做 - 通常不是。使用 UUID 作为 id 会降低性能、增加磁盘空间需求并使调试变得更加困难——因为 UUID 的长度很难记住,也很难通过电话告诉别人,或者把它写在纸上而不会出错。