首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL : pgAdmin调试器中的变量范围

PostgreSQL : pgAdmin调试器中的变量范围
EN

Stack Overflow用户
提问于 2013-02-27 14:07:05
回答 1查看 269关注 0票数 0

我正在努力了解pgAdmin调试器,并且对PostgreSQL相当陌生。我不知道我看到的行为是因为我犯了一个错误,还是仅仅因为调试器中的限制。

在函数的顶部,我声明了两个变量:

代码语言:javascript
复制
   declare tuple record;
   declare buffer text;

在函数的正文中,我试图迭代临时表TT_CALENDAR中的行,因此可以检查局部变量窗口中临时表的内容:

代码语言:javascript
复制
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 :='';,字符串值就会从局部变量窗口中消失。

为什么在执行buffer :='';之前退出循环时缓冲区显示的值会从局部变量窗口中消失?就好像变量已经超出了范围。

是否有会导致长值在“局部变量”窗口单元中换行的配置设置?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-05-01 06:19:51

这听起来像调试器的bug。我通常建议跟踪pgadmin电子邮件列表,并提醒开发人员注意这个问题。

我没有理由知道变量将超出作用域,所以在我看来,它是调试器本身的一个bug。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15114115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档