【发布时间】:2015-04-29 07:46:29
【问题描述】:
我想生成一个与产品类型相关的自定义标识列。 该查询能否保证身份的顺序并解决并发问题。 这是一个示例查询:
开始传输 插入到 TBLKEY 值((选择'A-'+ CAST(MAX(CAST(ID AS INT))+ 1 AS NVARCHAR)来自TBLKEY),'EHSAN') 犯罪【问题讨论】:
-
尝试使用序列而不是 +1。
-
@DudiKonfino,我不能使用身份或序列和计算字段,因为数字的连续性与产品类型有关,例如 10001 productA, 20001 productB
-
您可以从 10001 开始和 10000 步创建
-
您似乎认为您的集合需要是连续的。这是一个常见的错误信念。也就是说,除了 ID 空间看起来很漂亮之外,您还有什么商业原因?使用 SQL Server 为您提供的工具(即标识列或序列值),让您的生活变得更轻松。
标签: sql-server concurrency identity