1

我正在开发一个使用 NHibernate 和 PostgreSQL 以及 Npgsql 数据提供程序的系统。我需要在触发器中获取系统中的登录用户才能运行审计功能。有没有办法在 NHibernate 会话中设置用户或直接从数据库中获取它?请帮忙!

4

1 回答 1

1

这是我前段时间编写的关于如何将应用程序级用户身份转换为触发器的详细说明。本质上,您可以使用临时表来存储用户登录或自定义 GUC。无论哪种方式,您的应用程序都必须在创建会话时显式设置它,以便以后可以访问它。

就我个人而言,我认为您通常应该使用 PostgreSQL 用户,并且SET ROLE 如此处所述,但我意识到这并不总是一种选择。

于 2012-12-14T00:34:24.883 回答