2013-02-27 2 views
0

Я пытаюсь узнать отладчик pgAdmin и довольно новичок в PostgreSQL. Я не знаю, является ли поведение, которое я вижу, из-за ошибки, которую я делаю, или просто из-за ограничений в отладчике.PostgreSQL: переменная область в отладчике pgAdmin

В верхней части моей функции я объявил две переменные:

declare tuple record; 
    declare buffer text; 

В теле моей функции я пытаюсь перебирать строки во временной таблице TT_CALENDAR, так что можно было бы изучить содержимое временной таблицы в окне Locals:

for tuple in 
    select startdate, enddate from TT_CALENDAR 
    loop 
    buffer := concat(buffer, tuple.startdate::text, tuple.enddate::text,'|'); 
    end loop; 

buffer :=''; 

Breakpoints установлены на buffer := concat(... и на линии buffer :=''; и выполнения программы останавливается там, как и ожидалось, но как только мы выходим из цикла и прибыть в buffer :=''; значение строки исчезает из окна Locals.

Почему отображаемое значение буфера исчезает из окна Locals при выходе из цикла доbuffer :='';? Это как если бы эта переменная вышла за рамки.

P.S. Есть ли параметр конфигурации, который может привести к длительным значениям в окне локалей Значение cell?

Спасибо

ответ

0

Это действительно звучит как ошибка с отладчиком. Обычно я рекомендую следить за списками электронной почты pgadmin и предупреждать разработчиков об этой проблеме.

Нет причин, по которым я знаю, что переменные будут недоступны, поэтому мне кажется, что это ошибка в самом отладчике.

+0

Спасибо за ответ. Я буду следить за pgadmin. Полагаю, они не посещают это заведение :-) – Tim

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