我需要查询字符串值中的自动增量 -
我需要XS000001,XS000009 .... XS000099 ... XS000999,XS009999,XS099999,XS999999
请帮帮我......
答案 0 :(得分:1)
如果这是针对 SQL Server (您不清楚您使用的是哪个数据库),最佳解决方案是使用
ID INT IDENTITY(1,1)
列,以使SQL Server处理数值的自动增量所以试试这个:
CREATE TABLE dbo.YourTable
(ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED,
AutoIncID AS 'XS' + RIGHT('000000' + CAST(ID AS VARCHAR(6)), 6) PERSISTED,
.... your other columns here....
)
现在,每次在YourTable
中插入一行而未指定ID
或AutoIncID
的值时:
INSERT INTO dbo.YourTable(Col1, Col2, ..., ColN)
VALUES (Val1, Val2, ....., ValN)
然后SQL Server将自动且安全地增加ID
值,而AutoIncID
将包含XS000001
,XS000002
等值。 ....等等 - 自动,安全,可靠,无重复。
但问题确实是:如果您的号码范围用完了怎么办?在分发XS999999
之后你做了什么?我们无法为你回答.....