使用数据库触发器创建审核日志

时间:2018-01-26 14:46:27

标签: sql azure-sql-database

是否有任何软件包可以与数据库一起使用来创建所有数据库更改的审核/日志。

例如,我有大约10个不同的表。 我想记录对这些表所做的所有更改(更新/删除),并有一个报告工具,允许我搜索记录以查看更改。

理想情况下,只需最少的设置和配置。 例如,理想的工具将创建一个通用表来存储所有更改,而不需要自定义表 - 每个表记录一次。我认为它可以存储JSON中的更改而不是单独的列。

我们使用SQL Azure。

1 个答案:

答案 0 :(得分:3)

根据您的要求,请考虑使用SQL Database Auditing

还应考虑的SQL Azure数据库功能是Temporal Tables

CREATE TABLE WebsiteUserInfo 
(  
    [UserID] int NOT NULL PRIMARY KEY CLUSTERED 
  , [UserName] nvarchar(100) NOT NULL
  , [PagesVisited] int NOT NULL 
  , [ValidFrom] datetime2 (0) GENERATED ALWAYS AS ROW START
  , [ValidTo] datetime2 (0) GENERATED ALWAYS AS ROW END
  , PERIOD FOR SYSTEM_TIME (ValidFrom, ValidTo)
 )  
 WITH (SYSTEM_VERSIONING = ON (HISTORY_TABLE = dbo.WebsiteUserInfoHistory));

我不知道任何可以在Azure SQL数据库上进行审核的第三方软件。