一种业务订单号生成方法与流程

文档序号:15095808发布日期:2018-08-04 14:32阅读:1163来源:国知局
本发明涉及数据库
技术领域
,具体涉及一种业务订单号生成方法。
背景技术
:目前自增长ID作为数据的唯一标记正被大量使用。但自增长ID长度不统一,不包含业务信息和日期信息,可读性差。技术实现要素:本发明解决的技术问题在于提供一种业务订单号生成方法,解决了原来自增长工D长度不统一,不包含业务信息和日期信息,可读性差的问题。本发明解决上述技术问题的技术方案是:所述的方法包括以下步骤:步骤一、创建自增长记录表AutoIncrement;步骤二、实现根据不同业务类型生成当天内不重复ID的存储过程uspGetAutoIncrement,在存储过程中启用事务;步骤三、实现根据指定长度左填充指定字符的函数Lpad;步骤四、调用存储过程uspGetAutoIncrement得到ID;步骤五、调用函数Lpad对得到的ID左填充“0”;步骤六、将业务前缀加上当天日期字符串和ID连接起来得到业务订单号;本发明的有益效果:根据数据库事务会锁定表的特点,首先利用存储过程生成ID,存储过程中启用了事务,生成ID过程中,自增长记录表会被锁定,所以生成的ID在当天中不会重复,ID再和业务前缀和日期字符串拼接起来得到业务订单号,从而达到保证生成不重复、包含业务前缀和日期、可读性好的业务订单号的目的。附图说明下面结合附图对本发明进一步说明:图1为本发明的方法流程图。具体实施方式如图1所示,本发明采用如下步骤:步骤一、创建自增长记录表AutoIncrement;如:GuidTypeValueUpdateTimeGuid业务类型值更新时间步骤二、实现根据不同业务类型生成当天内不重复ID的存储过程uspGetAutoIncrement,在存储过程中启用事务;步骤三、实现根据指定长度左填充指定字符的函数Lpad;步骤四、调用存储过程uspGetAutoIncrement得到ID,业务类型是1;declare@resultnvarchar(50)exec@result=uspGetAutoIncrement1步骤五、调用函数Lpad对得到的ID左填充“0”,长度是5;set@result=dbo.1pad(@result,5,’0’)步骤六、将业务前缀加上当天日期字符串和ID连接起来得到业务订单号。set@result=’XSD’+CONVERT(varchar(100),GETDATE(),112)+@result。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1