• 执行动态sql返回参数


    ref: https://support.microsoft.com/en-us/kb/262499

    DECLARE @SQLString NVARCHAR(500)
    DECLARE @ParmDefinition NVARCHAR(500)
    DECLARE @IntVariable INT
    DECLARE @Lastlname varchar(30)
    SET @SQLString = N'SELECT @LastlnameOUT = max(lname)
                       FROM pubs.dbo.employee WHERE job_lvl = @level'
    SET @ParmDefinition = N'@level tinyint,
                            @LastlnameOUT varchar(30) OUTPUT'
    SET @IntVariable = 35
    EXECUTE sp_executesql
        @SQLString,
        @ParmDefinition,
        @level = @IntVariable,
        @LastlnameOUT=@Lastlname OUTPUT
    SELECT @Lastlname
    
    -------------------------------------------------------------
    
    CREATE PROCEDURE Myproc
        @parm nvarchar(10),
        @parm1OUT nvarchar(30) OUTPUT,
        @parm2OUT nvarchar(30) OUTPUT
    AS
        SELECT @parm1OUT=N'参数1parm 1' + @parm
        SELECT @parm2OUT=N'参数2parm 2' + @parm
    GO
    
    DECLARE @SQLString NVARCHAR(500)
    DECLARE @ParmDefinition NVARCHAR(500)
    DECLARE @parmIN nvarchar(10)
    DECLARE @parmRET1 nvarchar(30)
    DECLARE @parmRET2 nvarchar(30)
    SET @parmIN=' returned'
    SET @SQLString=N'EXEC Myproc @parm,
                                 @parm1OUT OUTPUT, @parm2OUT OUTPUT'
    SET @ParmDefinition=N'@parm nvarchar(10),
                          @parm1OUT nvarchar(30) OUTPUT,
                          @parm2OUT nvarchar(30) OUTPUT'
    /*
    EXECUTE sp_executesql
        @SQLString,
        @ParmDefinition,
        @parm1OUT=@parmRET1 OUTPUT,@parm2OUT=@parmRET2 OUTPUT,
        @parm=@parmIN  
    */
    --可以不指定参数名,但位置要正确
    EXECUTE sp_executesql
        @SQLString,
        @ParmDefinition,
        @parmIN,  @parmRET1 OUTPUT, @parmRET2 OUTPUT
    SELECT @parmRET1 AS "parameter 1", @parmRET2 AS "parameter 2"
    GO
    
    drop procedure Myproc
  • 相关阅读:
    Charles的使用教程
    Sublime Text 3 无法使用package control安装插件解决办法
    sublime常用快捷键整理(未完待续)
    常用 Git 命令清单
    js判断的执行顺序
    使用CSS3 Media Queries实现网页自适应(转)
    移动前端开发之viewport的深入理解(转)
    javascript之函数节流
    String常用方法总结
    腾讯面试题1
  • 原文地址:https://www.cnblogs.com/wucg/p/5916413.html
Copyright © 2020-2023  润新知