Динамический запрос с выходным параметром - PullRequest
0 голосов
/ 16 февраля 2010

Может ли любой из вас помочь мне преобразовать этот запрос в динамический запрос

DECLARE @Measure_Code nvarchar(50)
DECLARE @Transaction_Date datetime
DECLARE @Spec_Code nvarchar(max)
DECLARE @Error_Code nvarchar(500)
DECLARE @Operation_Status bit
DECLARE @Query nvarchar(1000)

SET @Measure_Code = 'CFL_WATTS'
SET @Transaction_Date = 02/16/2010

PRINT @Transaction_Date

SET @Spec_Code = 'CFL_Watts = 45'
SET @Error_Code = NULL 
SET @Operation_Status = NULL

SET @Query = 'USP_TRM_MEASURE_EVALUATE ' + '@Measure_Code'+','+'@Transaction_Date'+','+'@Spec_Code'+','+
                '@Error_Code output'+','+'@OPERATION_STATUSoutput'

PRINT @Query

EXEC(@Query)

Я хочу вывод как

@QUERY = USP_TRM_MEASURE_EVALUATE @MeasureCode,@Transaction_Date, @Spec_Code, @Error_Code output, @Operation_Status output 

1 Ответ

0 голосов
/ 01 февраля 2012

Вы не можете передать строку в функцию Exec () и ожидать, что локальные переменные внутри этой строки будут рассматриваться как переменные из вашей области вызова, либо для передачи в proc, либо для возврата из proc.

Просто позвоните в прок:

exec USP_TRM_MEASURE_EVALUATE @MeasureCode,@Transaction_Date, 
@Spec_Code, @Error_Code output, @Operation_Status output 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...