【问题标题】:Create global variable in Postgresql在 Postgresql 中创建全局变量
【发布时间】:2013-03-23 07:46:21
【问题描述】:

我正在为日志表创建触发器。在那个触发器中,我想将xuserno 存储到日志表中。 xuserno 是所有函数的参数

示例:

CREATE OR REPLACE FUNCTION fn_consume(xmode text, xuserno integer)
  RETURNS text AS
....
.....
.....

END;

Each table 有这种类型的function。那么我如何访问我的trigger 中的xuserno。我如何为此目的创建global variable?或者任何其他解决方案都可以实现这一点?

【问题讨论】:

标签: postgresql triggers postgresql-9.1


【解决方案1】:

可以为此目的使用事务本地自定义 GUC,但这通常不是一个好主意。

在大多数情况下,最好只使用包含感兴趣值的单行的 ON COMMIT DROP 临时表。

见:

【讨论】:

  • 如果我像这样使用set myapp.user_name=xuserno'; xuserno 是函数的参数。使用它来获取值SELECT current_setting('myapp.user_name') 但它显示xuserno 不是`xuserno 值` 为什么?有什么做错了吗
  • @SATSON 根据您提供的信息,我无法说出来。以完整、可运行的形式发布一个新问题,其中包含该过程的完整代码以及您的 PostgreSQL 版本等。
猜你喜欢
  • 2016-10-25
  • 2015-03-24
  • 1970-01-01
  • 2017-11-12
  • 2021-12-11
  • 2011-01-02
  • 2018-08-27
相关资源
最近更新 更多