2017年11月10日 星期五

使用 json 記錄SQL操作


參考 1: Example SQL Server TSQL Stored Procedure to produce JSON
建立 stored procedure SerializeJSON,使用方式
EXEC [dbo].[SerializeJSON] "SELECT * FROM myTable;";


參考 2: StackOverflow 的討論 Log record changes in SQL server in an audit table
 其中一則回答,提到 Pop Rivett 所提的作法

一個 Audit TABLE 應包括下列欄位
               Type CHAR(1),   // SQL 操作: U, I, D
               TableName VARCHAR(128),
               PK VARCHAR(1000),  // 不用了
               FieldName VARCHAR(128),  // 不用了
               OldValue VARCHAR(1000),  // 以 JSON 表示
               NewValue VARCHAR(1000), // 以 JSON 表示
               UpdateDate datetime,
               UserName VARCHAR(128))


Maintaining a Log of Database Changes,比較設定 trigger 或程式完成的優缺點。仔細考慮,設定 trigger 是比較省事。

沒有留言: