Я пытаюсь выполнить хранимую процедуру с некоторое время циклом в нем с помощью Data Studio Воды 6.5 и как только SP запускается, Данные Воды начинают использовать увеличивающийся объем памяти моего ЦП, которая не имеет абсолютно никакого смысла мне, потому что все должно быть выключено на сервере Sybase, с которым я работаю. Я прокомментировал и протестировал каждую часть SP и сузил проблему к циклу с условием продолжения. Кто-либо может объяснить мне, что продолжается?
create procedure sp_check_stuff as
begin
declare
@counter numeric (9),
@max_id numeric (9),
@exists numeric (1),
@rows numeric (1)
select @max_id = max(id)
from my_table
set @counter = 0
set @exists = 0
set @rows = 0
while @count <= @max_id
begin
//More logic which doesn't affect memory usage based
//on commenting it out and running the SP
set @counter = @counter + 1
set @exists = 0
set @rows = 0
end
end
вернуть
Сколько раз а цикл повторяется? Я подозреваю, что Aqua Data Studio создает структуры данных по мере выполнения запроса, и для каждой итерации цикла необходим дополнительный блок памяти для каталогизации плана / статистики этой итерации.