SSMS - Как передать SQL как Varchar в sys.dm_exec_query_plan - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь параметризовать SQL в форме nvarchar и вывести план запроса. Это то, что я до сих пор:

DECLARE @strSQL AS NVARCHAR(30) = N'select * from table_name'
DECLARE @vbrSQL VARBINARY(30)
SET @vbrSQL = CAST(@strSQL AS VARBINARY(30))
SELECT qp.query_plan FROM (SELECT @vbrSQL AS plan_handle) ph
CROSS APPLY sys.dm_exec_query_plan( ph.plan_handle ) qp

Но когда я выполняю запрос, я получаю следующее сообщение:

Msg 569, Level 16, State 5, Line 25
The handle that was passed to dm_exec_query_plan was invalid.

Я также попытался установить @vbrSQL следующим образом:

SET @pvbrSQL = CONVERT(VARBINARY(30),@pstrSQL,1)

Но я получаю следующее сообщение:

Msg 8114, Level 16, State 5, Line 24
Error converting data type nvarchar to varbinary.

Возможно ли это? Любая помощь приветствуется. Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...