zoukankan      html  css  js  c++  java
  • 使用sp_executesql

    建议您在执行字符串时,使用 sp_executesql 存储过程而不要使用 EXECUTE 语句。由于此存储过程支持参数替换,因此 sp_executesql 比 EXECUTE 的功能更多;由于 SQL Server 更可能重用 sp_executesql 生成的执行计划,因此 sp_executesql 比 EXECUTE 更有效

    下面是一个例子

    CREATE PROCEDURE [dbo].[P_PCT_SP_EXECUTESQL]
        -- Add the parameters for the stored procedure here
        @EmployeeName nvarchar(50),
        @CreateUser nvarchar(50),
        @SortField nvarchar(50),
        @SortDir nvarchar(50)
    AS
    BEGIN
        -- SET NOCOUNT ON added to prevent extra result sets from
        -- interfering with SELECT statements.
        SET NOCOUNT ON;
    
        -- Insert statements for procedure here
        declare @sql nvarchar(1000)
    
        set @sql = 'select * from employee where EmployeeName = @EmployeeName and CreateUser = @CreateUser order by ' + @SortField + ' ' + @SortDir
    
        exec sp_executesql 
        @sql, 
        N'@EmployeeName nvarchar(50),@CreateUser nvarchar(50),@SortField nvarchar(50),@SortDir nvarchar(50)',
        @EmployeeName,@CreateUser,@SortField,@SortDir
    END
    
    GO

      

  • 相关阅读:
    Express入门
    nodejs入门
    css实现点点点效果
    定时器详解和应用、js加载阻塞、css加载阻塞
    栈内存和堆内存有什么区别?
    webpack入门
    Ubuntu常用命令集合
    HTTP缓存机制
    125. 验证回文字符串
    算法的时间复杂度和空间复杂度(js版)
  • 原文地址:https://www.cnblogs.com/panchunting/p/SQLServer_sp_executesql.html
Copyright © 2011-2022 走看看