我们已将大量Oracle PL / SQL包转换为PostgreSQL PL / pgSQL。我们当时对Postgres了解不多,所以依靠互联网的帮助很多。因为PL / pgSQL缺乏更好的方法"在实现会话级变量时,我们最终使用set_config()
函数将PL / SQL包全局变量转换为PostgreSQL配置变量,比我们应该的更多。它们现在遍布整个代码。
有没有办法查询set_config()
函数设置的所有变量和变量?
根据他们在事务中的行为来判断,我的假设是它们存储在一些系统生成的(可能是临时的)表中。如果是这样,我想知道它的名字,以及是否可以查询它。
答案 0 :(得分:0)
set_config()
和current_stting()
函数的值存储在pg_settings
系统表中。因此,您可以通过
SELECT name, setting FROM pg_settings;
此表也包含更多列。使用\d pg_settings
获取所有列的列表。