zoukankan      html  css  js  c++  java
  • 在一个存储过程里面执行另一个存储过程的应用

    代码
    代码 

    ALTER PROCEDURE [dbo].[VoucherOutBound_BackInsurance]
        
    -- Add the parameters for the stored procedure here
        @IU_Id 
    int,   
        @ICC_ID 
    int,
        @IC_ID 
    int,   
        @UV_CurrentNO varchar(
    25),   
        @UV_VMoney 
    decimal(18,2
    AS
        DECLARE @snum bigint, @fnum bigint,@VO_StartNumber varchar(
    25),@outNumber varchar(25),@newCuid bigint,@nextVum varchar(25),@dt datetime,@count int
    BEGIN tran

      
    --查询需要插入的下一条记录
    set @snum = CAST(substring(@outNumber,7,len(@outNumber)) as bigint)+1
    set @nextVum =substring(@outNumber,1,6+ REPLICATE('0',len(@outNumber)-len(@snum)-6)+ cast(@snum as varchar(16))
    set @dt=getdate()      

    --执行添加的存储过程
    a_Add 这个是存储过程的名,后面的都是参数 ,@count
    =@count 这个是输出参数

    EXEC a_Add @IC_Id
    =@IC_Id,@ICC_Id=@ICC_Id,@VO_StartNumber=@outNumber,@VO_StopNumber=@outNumber,@VO_Number=1,@IU_Id=@IU_Id,@VO_CreateDate=@dt,@VO_State=2,@VO_NextOutNum=@nextVum,@count=@count

    EXEC b_Add @IC_Id
    =@IC_Id,@ICC_Id=@ICC_Id,@VC_VoucherNumber=@UV_CurrentNO,@VC_Underwrite=@dt,@IU_Id=@IU_Id,@VC_CreateDate=@dt,@count=@count

    if(@@ERROR<>0
      BEGIN
        PRINT 
    '有错误,回滚'
        ROLLBACK tran       
    --事务回滚语句
      END
    ELSE
       BEGIN
        PRINT 
    '成功,提交'
        COMMIT tran         
    --事务提交语句
       end


     
  • 相关阅读:
    Node.js中,获取req请求的原始IP
    socket原理详解
    让Redis在你的系统中发挥更大作用
    Redis复制与可扩展集群搭建【转】
    Linux下查看日志用到的常用命令
    Linux curl命令详解
    Linux 系统结构详解【转】
    网络IO之阻塞、非阻塞、同步、异步总结
    消息队列设计精要【转】
    MySQL的DDL语句、DML语句与DCL语句
  • 原文地址:https://www.cnblogs.com/wanglinglong/p/1701358.html
Copyright © 2011-2022 走看看