gpt4 book ai didi

sql-server - 将 exec sp_executesql 转换为普通查询的简单方法?

转载 作者:行者123 更新时间:2023-12-01 19:57:51 25 4
gpt4 key购买 nike

使用 Profiler 和 SSMS 处理调试查询时,我很常见的是从 Profiler 复制查询并在 SSMS 中测试它们。因为我使用参数化 sql,所以我的查询全部作为 exec sp_executesql 查询发送。

exec sp_executesql 
N'/*some query here*/',
N'@someParameter tinyint',
@ someParameter =2

我会将其转换为普通查询,以便于编辑(智能感知、错误检查、行号等):

DECLARE @someParameter tinyint
SET @someParameter = 2

/*some query here*/

当然,查询越大越复杂,做到这一点就越困难。当您多次来回时,这可能会很麻烦并且会占用大量时间。

是否有一种简单的(例如宏命令)方法可以将 muhexecutesql 转换为更方便的东西?

最佳答案

我花了一点时间制作了一个简单的脚本来为我完成这个任务。这是一个 WIP,但我在它前面贴了一个(非常丑陋的)网页,如果您想尝试一下,它现在托管在此处:

http://execsqlformat.herokuapp.com/

示例输入:

exec sp_executesql 
N'SELECT * FROM AdventureWorks.HumanResources.Employee
WHERE ManagerID = @level',
N'@level tinyint',
@level = 109;

输出:

BEGIN
DECLARE @level tinyint;

SET @level = 109;

SELECT * FROM AdventureWorks.HumanResources.Employee
WHERE ManagerID = @level
END

从输入中提取实际 SQL 语句后,它的格式是使用 http://sqlformat.appspot.com 处的 API 完成的。

关于sql-server - 将 exec sp_executesql 转换为普通查询的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1138402/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com