0

Я пытаюсь получить 2 данных столбца, используя простой запрос выбора в хранимой процедуре. Я получаю вывод при работе в студии управления сервером sql. Но выполнение одного и того же запроса в mulesoft Anypoint studio, я получаю ошибкуКак выбрать более одного столбца в запросе на выборку хранимой процедуры MS SQL в mule

Процедура или функция sample1 имеет слишком много аргументов.

Вот хранимая процедура создания:

ALTER PROCEDURE [dbo].[sample1] @hidden INT 
AS 
SELECT geo_name,id_definition 
FROM geo 
WHERE flag_hidden = @hidden 
GO 

и здесь мулов скриншоты реализация потока:

Please check image for mule implementation of stored procedure

Вот скриншот ошибки:

Error of Mule flow

+1

Ваши определяющие выходные параметры 'geo_name' и' id_definition'. Они не являются выходными параметрами, они не являются параметрами, они являются набором результатов. – TZHX

+0

спасибо .. ваш вклад мне помог .. Нам нужно использовать select * из имени таблицы и в mule для процедуры вызова, нам нужно передать только входные параметры ie ({call sample1 (: UP_RUN_ID)}), а не выводить параметры (firstname, lastname). – sabarinath

+0

Но когда нужно возвращать только first_name, last_name, и я не хочу использовать '*', как я могу добиться вывода? – sabarinath

ответ

0

Для выбора более одного столбца вы можете использовать образец ниже. Не забудьте заменить соответствующие столбцы.

select actimgUsername,actimgpass,accountName from vendors with(nolock) where actimgUsername = #[flowVars.userName] and actimgpass = #[flowVars.passWord] and accountname = #[flowVars.accountName] 

Спасибо!

+0

Получение нулевого вывода при использовании с (nolock). – sabarinath

+0

Просьба указать запрос, который вы использовали. –

+0

'USE [mydb] GO /****** Объект: StoredProcedure [dbo]. [Sample1] Дата скрипта: 8/19/2016 12:10:55 PM ******/ SET ANSI_NULLS ПО GO SET QUOTED_IDENTIFIER ПО GO АЪТЕК ПРОЦЕДУРЫ [DBO]. [sample1] КАК НАЧАТЬ объявить @hidden INT ВЫБОР GEO_NAME, id_definition оТ гео с (NOLOCK) ГДЕ flag_hidden = @hidden END' – sabarinath

0

Я использовал курсоры, чтобы получить выходной сигнал в мул расход

`ЗАЯВЛЯЕТ @fName VARCHAR (50), @lName VARCHAR (50)

DECLARE аЬс КУРСОР - Объявляют курсор

МЕСТНОГО ПРОКРУТКИ STATIC

ДЛЯ

Выберите ПгвЬЫате, LastName FROM MyTable

ОТКРЫТЫЙ абв - открыть курсор

FETCH СЛЕДУЮЩИЙ ИЗ CursorName

INTO @fName, @lName

PRINT @fName + '' + @lName - напечатать имя

ПОКА @@ FETCH_STATUS = 0

НАЧАТЬ

FETCH СЛЕДУЮЩИЙ ИЗ CursorName

INTO @fName, @lName

PRINT @fName + '' + @lName - напечатать имя

END

ЗАКРЫТЬ а - закрыть курсор

DEALLOCATE ABC - - Отменить курсор`

Смежные вопросы