如何以vb格式自动递增

时间:2017-09-15 14:58:20

标签: sql-server visual-studio-2012

我使用vb.net和SQL Server作为后端;我想自动生成id作为主键创建,有没有办法用字母数字ex自动生成id: - cx10001,cx1002

1 个答案:

答案 0 :(得分:1)

最佳解决方案是使用

  • ID INT IDENTITY(1,1)列,以使SQL Server处理数值的自动增量
  • 计算的,持久的列,将该数值转换为您需要的值

所以试试这个:

CREATE TABLE dbo.YourTable
(
     ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED,
     YourOtherId AS 'cx' + RIGHT('00000' + CAST(ID AS VARCHAR(5)), 5) PERSISTED,
     .... your other columns here....
)

现在,每次在YourTable中插入一行而未指定IDYourOtherID的值时:

INSERT INTO dbo.YourTable(Col1, Col2, ..., ColN)
VALUES (Val1, Val2, ....., ValN)

然后SQL Server将自动且安全地增加ID值,而YourOtherID将包含cx00001cx00002等值。 ....等等 - 自动,安全,可靠,无重复。