create procedure draw
@err varchar(10) output
as
begin
declare
@itcode NVARCHAR(50),
@id int
select * from ticketLog where itcode = @itcode
if @@ROWCOUNT = 0
select top 1 @id=id from ticket where allSum>0 order by newid()
if @@ROWCOUNT = 0
begin
set @err='notTicket'
return (1)
end
else
update ticket set allSum=allSum-1 where id=@id
insert into ticketLog (itcode,ticketID,dateTime) values(@itcode,@id,GETDATE())
select * from ticket where id = @id //这里要返回成功后的票务信息
end
else
begin
set @err='repeat'
return (1)
end
end
end
go
declare @err varchar(10)
exec draw @err output
select @err