zoukankan      html  css  js  c++  java
  • 使用编号表生成流水号的示例.sql

    --编号表
    CREATE TABLE tb_NO(
    Name char(2) PRIMARY KEY,               --编号种类的名称
    Head nvarchar(10) NOT NULL DEFAULT '',  --编号的前缀
    CurrentNo int NOT NULL DEFAULT 0,       --当前编号
    BHLen int NOT NULL DEFAULT 6,           --编号数字部分长度
    DESCRIPTION NVARCHAR(50))               --编号种类说明

    INSERT tb_NO SELECT 'CG','CG',0,4,N'采购订单'
    UNION  ALL   SELECT 'CJ','CJ',0,4,N'采购进货'
    UNION  ALL   SELECT 'JC','JC',0,4,N'进仓单'
    UNION  ALL   SELECT 'ZC','ZC',0,4,N'转仓单'
    UNION  ALL   SELECT 'CC','CC',0,4,N'出仓单'
    GO

    --获取新编号的存储过程
    CREATE PROC p_NextBH
    @Name char(2),           --编号种类
    @BH nvarchar(20) OUTPUT --新编号
    AS
    BEGIN TRAN
        UPDATE tb_NO WITH(ROWLOCK) SET
            @BH=Head+RIGHT(POWER(10,BHLen)+CurrentNo+1,BHLen),
            CurrentNo=CurrentNo+1
        WHERE Name=@Name
    COMMIT TRAN
    GO

    --获取 CJ 的新编号
    DECLARE @bh char(6)
    EXEC p_NextBH 'CJ',@bh OUT
    SELECT @bh
    --结果: CJ0001

    EXEC p_NextBH 'CJ',@bh OUT
    SELECT @bh
    --结果: CJ0002
    GO

    --获取 CC 的新编号
    DECLARE @bh char(6)
    EXEC p_NextBH 'CC',@bh OUT
    SELECT @bh
    --结果: CC0001

    EXEC p_NextBH 'CC',@bh OUT
    SELECT @bh
    --结果: CC0002
  • 相关阅读:
    UIimageView和UIimage的小区别
    transform
    block的一些注意事项
    category与协议的不同
    类扩展和category的小区别
    category的概念
    OC中的类扩展
    Java学习 第三章 java基础(三)
    Java学习 第三章 java基础(二)
    Java学习 第三章 java基础(一)
  • 原文地址:https://www.cnblogs.com/shihao/p/2508606.html
Copyright © 2011-2022 走看看