【问题标题】:call a stored procedure from another stored procedure and bring values from first stored procedure to the second stored procedure从另一个存储过程调用一个存储过程,并将值从第一个存储过程带到第二个存储过程
【发布时间】:2016-10-10 23:22:59
【问题描述】:

我目前正在做一个创建存储过程“sp_master”的任务。

从那个存储过程中,我读入需要的外部数据、内部数据,然后执行所有需要的逻辑来判断输入的信息是否有效。

然后我需要从“sp_master”存储过程中调用一个存储过程“sp_insert”。从“sp_insert”存储过程中,我需要使用读入“sp_master”存储过程的外部数据向表中添加一行。

我知道如何从另一个存储过程中调用一个存储过程,但我不确定如何传递这些值,这正是我需要帮助的原因

这是我的代码的 sn-p 以提供理解

Create proc sp_master
 @DeliveryID int, @FreightID int, @NoOfGoods int
as
--Perform reads and logic
begin
EXECUTE sp_Insert_delivery
end

然后从 sp_Insert

Create proc sp_exam_Insert_delivery
as
begin try
insert into dbo.Delivery
(FreightID, DeliveryID, NoOfGoods)
Values
(@FreightID, @DeliveryID, @NoOfGoods)
end try
--followed by catch

【问题讨论】:

    标签: sql-server tsql stored-procedures sql-server-2012


    【解决方案1】:

    你只需要将相同的参数添加到sp_Insert_delivery并传入即可。

    Create proc sp_master
     @DeliveryID int, @FreightID int, @NoOfGoods int
    as
    --Perform reads and logic
    begin
    EXECUTE sp_Insert_delivery @DeliveryID, @FreightID, @NoOfGoods
    end
    

    .

    Create proc sp_Insert_delivery
      @DeliveryID int, @FreightID int, @NoOfGoods int
    as
    begin try
    insert into dbo.Delivery
    (FreightID, DeliveryID, NoOfGoods)
    Values
    (@FreightID, @DeliveryID, @NoOfGoods)
    end try
    --followed by catch
    

    【讨论】:

      猜你喜欢
      • 2014-09-17
      • 1970-01-01
      • 1970-01-01
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 2010-11-14
      相关资源
      最近更新 更多