代码之家  ›  专栏  ›  技术社区  ›  AGH

希望生成自定义唯一密钥并同时处理多个请求

  •  1
  • AGH  · 技术社区  · 6 年前

    我在SQL数据库服务器中有一个如下的表,其中包含一个varchar列,并使用linq to实体以编程方式将其维护为自定义的唯一键。我正在从数据库中提取数据,并进行拆分、增量和保存,但我想知道当多个请求同时出现时会发生什么情况,这可能会使我的逻辑失败或由SQL Server处理。

    -----------------
    Id      |  Code
    -----------------
    1       | BA0001
    2       | BA0002
    3       | BA0003
    
    1 回复  |  直到 5 年前
        1
  •  1
  •   David Browne - Microsoft    6 年前

    create sequence seq_t
    start with 1
    increment by 1
    
    create table t
    (
      id varchar(20) default concat('BA',format((next value for seq_t),'0000')) primary key, 
      a int
    )