从外部存储过程获取参数值 - 嵌套存储过程

问题描述:

我有这个存储过程。我想知道是否可以获取来自外部存储过程的参数的值并将其传递到内部存储过程。以下是我的存储过程。从外部存储过程获取参数值 - 嵌套存储过程

CREATE PROCEDURE [dbo].[OuterStoredProcedure] 
@OuterParameter_FirstName VARCHAR(50), 
@InnerParameter_Spouse_FirstName VARCHAR(50) 

AS BEGIN

DECLARE @DT DATETIME 
SET @DT = GETDATE() 

INSERT EMPLOYEE_DETAILS WITH (ROWLOCK) 
(
    FirstName 
) 

VALUES 
(
    @OuterParameter_FirstName 
) 

DECLARE @STOREPROC_QUERY NVARCHAR(MAX) 
SET @STOREPROC_QUERY = 'CREATE PROCEDURE InnerStoredProcedure 
         AS 
         BEGIN 
          DECLARE @DT DATETIME 
          SET @DT = GETDATE() 

          INSERT EMPLOYEE_SPOUSE WITH(ROWLOCK) 
          (
           Spouse_FirstName 
          ) 

          VALUES 
          (
           ''HOW WOULD I BE ABLE TO PASS THE VALUE OF THE PARAMETER @InnerParameter_Spouse_FirstName INSIDE THIS SECTION'' 
          ) 
         END' 

EXEC(@STOREPROC_QUERY) 

END

+0

为什么使用动态sql创建存储过程?为什么你甚至在这里使用动态sql? – 2014-10-30 16:08:53

+0

这是客户需要的。我也不确定他们想做什么。 – frustratedprogrammer 2014-10-30 20:20:55

+0

不知道客户使用动态sql创建过程需要什么。如果你不确定代码的目的是什么,我不知道你可以指望别人提供什么帮助。 – 2014-10-30 20:40:36

'' '+ @ InnerParameter_Spouse_FirstName + '''

你所需要的参数仍处于范围由调用时间SET命令为您的第二个存储过程。它应该仍然能够获得价值。