3

它只是一个普通的屏幕打印吗?如果是为什么不简单地使用简单的控制台打印命令?

我查了一下,没有太多关于它的信息。即使在官方 PostgreSQL 指南中,除了它存在的事实之外,也没有关于它的信息。

是否首选使用plpy模块,因为这样打印的信息不会记录在PostgreSQL日志文件中?

4

1 回答 1

4

PL/Pythonplpy.notice(msg)方法及其近亲 , plpy.debug(msg), plpy.log(msg), plpy.info(msg), plpy.warning(msg),plpy.error(msg)plpy.fatal(msg)用于使用 PostgreSQL 的日志记录功能生成消息。和变体还引发异常errorfatal可用于中止当前 SQL 事务。plpy.notice(msg)相当于 PL/PgSQL 命令RAISE NOTICE msg

根据 PostgreSQL 9.4 文档http://www.postgresql.org/docs/9.4/static/plpython-util.html,可以通过数据库配置变量控制各个级别的日志消息的目的地。例如,您可以指定只希望将至少WARNING级别的消息发送到客户端,而将任何来自NOTICE和以上的消息记录到服务器日志中。至少回到 PostgreSQL 8.0 就是这种情况。

于 2015-07-24T08:46:38.490 回答