2013-02-27 70 views
0

我想了解pgAdmin調試器,而且對PostgreSQL來說是相當新的。我不知道我看到的行爲是由於我犯的錯誤還是僅僅是因爲調試器的限制。PostgreSQL:在pgAdmin調試器中的變量範圍

在我宣佈兩個變量我的函數的頂部:

declare tuple record; 
    declare buffer text; 

在我的函數體中我試圖在迭代臨時表TT_CALENDAR行,所以這將是可能的檢查

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

buffer :=''; 

斷點設置爲buffer := concat(...,並在該行buffer :='';和程序執行停止那裏預期,但只要我們退出循環,並在到達:在本地窗口的臨時表的內容字符串值從當地人窗口消失。

當我們退出循環之前buffer :='';執行時,爲什麼緩衝區的顯示值會從本地窗口消失?就好像變量已經超出範圍。

P.S.是否有配置設置會導致長時間值在本地窗口中打包單元?

謝謝

回答

0

這聽起來像一個調試器的錯誤。我通常會建議在pgadmin電子郵件列表中進行跟進並提醒開發人員解決此問題。

我沒有理由知道變量超出範圍,所以它聽起來像它是調試器本身的錯誤。

+0

感謝您的回覆。我將跟進pgadmin。我收集他們不頻繁這個建立:-) – Tim 2013-05-01 11:53:58