Возвращение значения из хранимой процедуры после того, как значение было использовано в операторе If - PullRequest
0 голосов
/ 19 октября 2018

У меня есть простая хранимая процедура MSSQL, которая должна запросить таблицу и вернуть значение.

Я добавил оператор IF после моего SELECT для выполнения действия в случае совпадения.Однако этот оператор IF не позволяет вернуть значение @countrycode.

Итак, мой вопрос: как мне вернуть значение @countrycode при выполнении действия IF?

Пожалуйста, не стесняйтесьпредложить более элегантный метод.

BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

DECLARE @countrycode VARCHAR(10)

-- Insert statements for procedure here
SELECT @countrycode = countrycode FROM tblIpLocation WHERE ipnumber = @ipnumber

-- Perform action if countrycode is found
IF @countrycode is null
    PRINT 'Nothing found'
ELSE 
    -- Increment the positivequerycount column in the same row from which the countrycode was made
    UPDATE tblIpLocation 
             SET positivequerycount = positivequerycount + 1 
             WHERE ipnumber = @ipnumber

END

1 Ответ

0 голосов
/ 19 октября 2018

Спасибо, Дэн Гузман, вы направили меня в нужное русло.

Я попробовал следующее, чтобы вернуть значение ...

SELECT @countrycode

Однако, конечно, это нужно...

SELECT @countrycode AS countrycode

Окончательное решение ..

BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

DECLARE @countrycode VARCHAR(10)

-- Insert statements for procedure here
SELECT @countrycode = countrycode FROM tblIpLocation WHERE ipnumber = @ipnumber


-- Perform action if countrycode is found
IF @countrycode is null
    PRINT 'Nothing found'
ELSE

    -- Increment the positivequerycount column in the same row from which the countrycode was made
    UPDATE tblIpLocation SET positivequerycount = positivequerycount + 1 WHERE ipnumber = @ipnumber

    SELECT @countrycode AS countrycode

END

Спасибо за вашу помощь

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