CREATE PROCEDURE p_申请ID  ( @tnID integer OUTPUT, @tn申请个数 integer = 1  )
AS

DECLARE @ID INTEGER

SET TRANSACTION ISOLATION LEVEL  SERIALIZABLE

BEGIN TRANSACTION

IF not  EXISTS( SELECT  参数值 from 系统_参数 where 参数名= '最大ID' )
       BEGIN
 INSERT INTO 系统_参数 (参数名,参数值,参数类型)  values ('最大ID', '0','N' )      
       END


SET @tnID = CONVERT( INTEGER , ( SELECT  参数值 from 系统_参数 where 参数名='最大ID' )) +  @tn申请个数

UPDATE 系统_参数      SET 参数值 = @tnID   WHERE  参数名= '最大ID'

COMMIT TRANSACTION

GO

Posted on 2010-02-24 15:18  谢金龙  阅读(121)  评论(0编辑  收藏  举报