存储过程 EXEC SP_EXECUTESQL 返回值接收赋值给变量

 DECLARE @filed VARCHAR(50)   

 DECLARE @sqlstring NVARCHAR(4000)    

DECLARE @productNo VARCHAR(30)= 'SS24SU5K04'    

DECLARE @color VARCHAR(50) = '64'    

DECLARE @size VARCHAR(50)= '35'    

DECLARE @sqlSelectString NVARCHAR(1000)

 DECLARE @realNumbe INT

    BEGIN      

   SET @filed = ( SELECT   CONVERT(VARCHAR(50), [Field])                        FROM     [shop].[dbo].[tbl_stockid]                        WHERE    stockid = 4                      )           SET @productNo = '''' + @productNo + ''''         SET @sqlSelectString = 'SELECT  @realNumbe=' + @filed + '                                       FROM   dbo.tbl_product_store                                    

  WHERE  product_no = ' + @productNo + '                                             AND product_size = ' + @size + '                                             AND color = ' + @color + ''         EXEC SP_EXECUTESQL @sqlSelectString, N'@realNumbe VARCHAR(50) OUT', @realNumbe OUT         PRINT @realNumbe                     

END

posted @ 2013-03-01 16:32  阿玉儿  阅读(422)  评论(0编辑  收藏  举报