"sasha" ...
>
> Возник вопрос как изменяется ROW_COUNT.
>
> Допустим есть у меня ХП, которая внутрях делает какие-то простые
математические операции и вызвращает 1 результат.
> Если я вызову эту процедуру с помощью EXECUTE PROCEDURE ... RETURNING
VALUES, то как она повлияет на ROW_COUNT от предыдущего запроса.
>
> Оказывается что вызов EXECUTE PROCEDURE ... RETURNING VALUES устанавливает
ROW_COUNT в ноль, что, по-моему, неверно.

    Я не вникал, как у нас сделан ROW_COUNT, но общее правило
(для всех известных мне серверов) гласит - переменные, описывающие
выполнение оператора (например @@ERROR, @@ROWS_AFFECTED,
@@FETCH_STATUS в T-SQL), имеют валидное значение только сразу
после этого оператора.

    Так штааа - пользуйтесь правильно и будет вам 'щастье' ;-)

-- 
Хорсун Влад


Ответить