使用SQL Server在存储过程中执行动态SQL命令的实际利弊是什么

EXEC (@SQL)

EXEC SP_EXECUTESQL @SQL

?

推荐答案

sp_executesql更有可能促进查询计划的重用.使用sp_executesql时,参数在调用签名中明确标识.这篇优秀的文章描述了这process个.

对于动态sql的许多方面,经常被引用的参考文献是Erland Sommarskog的必读书目:"The Curse and Blessings of Dynamic SQL".

Sql相关问答推荐

如何在VB.NET中使用MS SYS根据开始和结束期间日期进行查询

Postgres,使用iLike运算符从json数组中搜索的工作方式与从常规表中搜索不同

Oracle SQL-将结果列在单行中

解析SQL Server中的嵌套JSON

Access VBA SQL命令INSERT FOR MULTIME VALUE

编写一个SQL查询来返回收视率较高的类型,并取这些收视率的平均值,我该如何做呢?

Access中执行INSERT INTO查询时出现错误消息

根据开始日期和结束日期的差异计算每天的计费

ColdFusion+Docker:未安装SQLSERVER包

如何使用不重复的单个顶级字段(列)向json数组 Select 多行

同一表的Oracle SQL更新(含YTD合计)

在Athena中使用regexp提取括号前的字符串值

使用左外部联接更正列中第+1行的值时重复

如何在 SNOSQL 中执行反连接(或 where 子句过滤)以查找字段不包含另一个表中的值的行?

Netezza SQL:判断两个表是否相同

MariaDB非常简单的MATCHAGAINST查询不使用FULLTEXT索引吗?

IN子句使用的表值用户定义函数参数

将 MERGE 语句与 Oracle PL/SQL 表类型一起使用时,导致无效数据类型错误的原因是什么?

BigQuery Pivot 遗漏行

BigQuery - 将 TIMESTAMP 转换为 HH:MM:SS,然后识别 TIME_DIFF