SQLserver中idendity的妙用

时间:2025-01-06 12:07:50

假设:现在有产品信息需要入库,要给每个产品按找预定的规则进行编号,编号规则如下:

产品编码:6位产品类型码+1位仓库码+2位年份+5位顺序码(要求从00001开始自增)

6位产品类型码:P00001

仓库码:1

例子:P0000111500001

看似复杂,但是其实很简单,只需要恰当的使用一下identity即可。

--=========================================--
--Create table
Create Table PriductionInfo
(
id int identity(1,1),
ProductionCode AS 'P00001'+''+SUBSTRING(CONVERT(VARCHAR,GETDATE(),111),3,2)+RIGHT( REPLICATE('', 5) + Cast(id as varchar), 5),--产品14位编码
ProductionName varchar(100)
)
--插入数据进行测试
insert into PriductionInfo select '产品A' --查看生成的产品编号
SELECT * FROM PriductionInfo

通过查询,得到的数据如下:

SQLserver中idendity的妙用