在使用 pgAdmin III 很长一段时间后,我最近安装了 pgAdmin 4。我注意到在使用 RAISE NOTICE 运行 plpgsql 函数后,消息下没有显示任何内容。我去了https://www.postgresql.org/docs/current/static/plpgsql-errors-and-messages.html https://www.postgresql.org/docs/current/static/plpgsql-errors-and-messages.html并尝试这样做:
set client_min_messages = 'NOTICE';
还尝试设置各种级别的DEBUG,但仍然没有任何显示。使用 pgAdmin III 连接时会出现通知,因此我认为两者之间存在一些我没有看到的差异。
如果有人问,我只是尝试了 Postgres 的示例函数之一来测试这一点:
CREATE FUNCTION somefunc() RETURNS integer AS $$
<< outerblock >>
DECLARE
quantity integer := 30;
BEGIN
RAISE NOTICE 'Quantity here is %', quantity; -- Prints 30
quantity := 50;
--
-- Create a subblock
--
DECLARE
quantity integer := 80;
BEGIN
RAISE NOTICE 'Quantity here is %', quantity; -- Prints 80
RAISE NOTICE 'Outer quantity here is %', outerblock.quantity; -- Prints 50
END;
RAISE NOTICE 'Quantity here is %', quantity; -- Prints 50
RETURN quantity;
END;
$$ LANGUAGE plpgsql;
在 pgAdmin III 中,提出了预期的通知:
注意:这里的数量是30个
上下文:PL/pgSQL 函数 somefunc() 第 6 行在 RAISE
注意:这里的数量是80
上下文:PL/pgSQL 函数 somefunc() 第 14 行,位于 RAISE
注意:这里的外部数量是 50 个
上下文:PL/pgSQL 函数 somefunc() 第 15 行,位于 RAISE
注意:这里的数量是50个
上下文:PL/pgSQL 函数 somefunc() 第 18 行,位于 RAISE
总查询运行时间:14 毫秒。
检索到 1 行。
预先感谢您的任何建议或答案!
我能够正确地看到它,您是否检查了“消息”选项卡?
请参阅给定的屏幕截图。
UPDATE
最近,他们修复了一些与 pgAdmin4 中显示消息相关的错误。
所以它可以在pgAdmin4 版本 1.7.
Ref: https://redmine.postgresql.org/issues/2555 https://redmine.postgresql.org/issues/2555
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)