我使用vb.net和SQL Server作为后端;我想自动生成id
作为主键创建,有没有办法用字母数字ex自动生成id: - cx10001,cx1002
答案 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
中插入一行而未指定ID
或YourOtherID
的值时:
INSERT INTO dbo.YourTable(Col1, Col2, ..., ColN)
VALUES (Val1, Val2, ....., ValN)
然后SQL Server将自动且安全地增加ID
值,而YourOtherID
将包含cx00001
,cx00002
等值。 ....等等 - 自动,安全,可靠,无重复。