`
zheyiw
  • 浏览: 999801 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

SqlServer计数器

阅读更多

/* ==========================================================================================
描    述:从计数器取数
创 建 人:
创建日期:2010-09-21
更新说明:
-- ==========================================================================================*/
CREATE PROCEDURE [dbo].[spSys_GetMaxNum]
  @ComCode VARCHAR(20), @ObjID VARCHAR(20), @AddNum INT = 1, @MaxNum INT OUTPUT
AS
UPDATE a
SET    @MaxNum = isnull(a.MnMaxNum, 0) + a.MnStep, a.MnMaxNum = isnull(a.MnMaxNum, 0) + a.MnStep + @AddNum - 1
FROM   Sys_MaxNum a
WHERE  a.ComCode = @ComCode AND a.ObjID = @ObjID

IF (@@ROWCOUNT = 0)
  BEGIN
    INSERT INTO dbo.Sys_MaxNum(ComCode, ObjID, MnMaxNum, MnStep)
    VALUES      (@ComCode, @ObjID, @AddNum, 1)

    SET @MaxNum = 1
  END

COMMIT TRANSACTION
GO

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics