1

我想知道当用户从我的 ASP.NET 应用程序插入或更新一些数据时,记录的最佳实践是什么。

在我的应用程序中,我需要知道哪个用户进行了更改,我想我必须选择:

  • 将我的 ASP.NET 用户注册到 SQL Server 中,为他们添加所需表的权限,并为我的每个用户存储单独的连接字符串。因此,我可以在连接到数据库时使用当前登录用户的连接字符串,这样我就可以为 SELECT 和 UPDATE 编写 T-SQL 触发器。

  • 我想到的另一个选择是我可以编写存储过程,将 ASP.NET 用户名作为输入参数并为我制作日志(我在应用程序中只使用一个连接字符串)。从应用程序修改数据库后,我将调用此过程,给出当前登录用户的用户名。

第二个选项对我来说似乎更简单,但我认为为此我应该选择第一个选项。

4

1 回答 1

1

选择第二个选项。在数据库中管理用户让您更加头疼,如果您必须移动数据库服务器会发生什么?您需要更新所有用户的所有连接字符串。它只会产生额外的管理开销。

此外,如果您需要记录数据库中的所有更改,那么我想出了一些我过去使用的东西来存储随着时间的推移对数据库所做的所有更改。看看吧,也许有用。

http://richhooper.wordpress.com/2012/06/11/sql-server-row-level-versioning/

于 2013-01-04T13:42:02.143 回答