我有一个带有INT
主键列的表。我不想使用GUID
orIDENTITY
作为主键。
IDENTITY
我想知道在不使用orGUID
作为表中的主键列的情况下获取下一个 ID 的最佳方法是什么。我不介意在表中使用GUID
or IDENTITY
,除非它是主键列。
我必须找到下一个可用的ID
(即获取 MAX ID 并将其增加 1),并使用它:
SELECT @id=ISNULL(max(AlbumId)+1,1) FROM Albums
但是,当我这样做时,我想防止其他应用程序插入表中,这样我们就不会遇到任何问题。
注意:请不要将此问题标记为DUPLICATE。我已经完成了这个答案,但无法正确理解。有人愿意向我解释他们在做什么吗?我可以使用相同的技术吗?