2008-09-18 29 views
2

我想两者都做下面的事情:如何在审计触发器中使用system_user但仍使用连接池?

  1. 使用情况进行审计触发我的数据库表,以确定哪些用户更新的东西;
  2. 使用连接池来提高性能

#1,我用“SYSTEM_USER”数据库触发器来标识进行更改的用户,但是这阻止了我这样做#2这需要一个通用的连接字符串。

有没有一种方法可以让这两个世界的最佳状态?

ASP.NET/SQL Server 2005

回答

1

不幸的是,没有。仅从数据库连接识别用户并共享用户之间的数据库连接是互斥的。

1

将您的Web应用程序中的用户存储在数据库中,并让您的触发器关闭存储的数据。让Web应用程序处理将所有日志信息写入数据库可能会更好。

+0

不幸的是,没有简单的方法通过触发器知道哪个“用户”正在进行更改。您需要记录中的辅助字段将其绑定到该帐户,并且必须提供疯狂的技巧来跟踪用户的DELETE。 – 2008-10-03 17:04:19