自己写的生成订单(号)的存储过程
订单号格式:yyyyMMddhhmmxxxx,后面四位递增数
create proc [dbo].[proc_OrderManager]
(
@userId uniqueidentifier,
@creditCount int
)
as
begin
begin tran
declare @nowCount int
declare @now nvarchar(12)
declare @date datetime
select @date=GETDATE()
select @now= CONVERT(nvarchar(12),@date,112)+DATENAME(HH,@date)+DATENAME(MINUTE,@date)
select @nowCount=COUNT(*) from dbo.ShopOrder where time=@now
declare @ordernumber nchar(16)
if @nowCount<=0
begin
select @ordernumber=@now+'0000'
insert into ShopOrder output inserted.OrderNumber values(@userId,@ordernumber,@creditCount,@now,0)
end
else
begin
declare @maxNumber bigint
select @maxNumber=MAX(CAST(ordernumber as bigint)) from ShopOrder
insert into shoporder output inserted.OrderNumber values(@userId,@maxNumber+1,@creditCount,@now,0)
end
commit
end

浙公网安备 33010602011771号