自动编号

DECLARE @LX VARCHAR(10) --声明编号开头类型
DECLARE @FH VARCHAR(10) --声明编号中间符号
DECLARE @RQ VARCHAR(10) --声明编号中间日期
DECLARE @NO INT --声明编号中流水号

SELECT @LX='XB' --定义编号开头类型为:XB
SELECT @FH='-' --定义编号中间符号为:-
SELECT @DT=DT FROM V_RQ --定义编号中间日期为:系统当前日期

--判断日期的种子表是否有当前日期,如果没有插入一条当前日期,并种子标示为1,如有有将其查询出结果不做操作.
IF ((SELECT COUNT(1) FROM AD WHERE RQ=@RQ)=0)
INSERT INTO AD(RQ,NO) VALUES(@RQ,1)--默认将插入的流水号为1
ELSE
SELECT RQ,NO FROM AD
--获取编号的同时修改种子表
UPDATE AD SET @NO = NO,NO = NO+1 WHERE RQ =@RQ

--插入业务编号
INSERT INTO AC(XLH) VALUES(@LX+@FH+@DT+@FH+(CONVERT(VARCHAR(100),@NO)))

posted @ 2022-03-22 15:38  晨诚他爸  阅读(74)  评论(0)    收藏  举报