我将创建由触发器填充的历史表(在插入、更新、删除之后)。由于只有20%的列将被更新,所以我决定只记录更改后的值--如果不更改值,则将在历史表中使用NULL值。例如:历史表列将是sparse,与记录所有数据的普通实现相比,我将节省大量空间(这是由于我的测试和业务情况)。由于我的SQLServer 2016 SP1 standard edit
我在SQLServer中有一个表tblMain。有一个触发器,当一行更改时,它基本上执行SELECT * from tblMain并将更改后的行插入到tblHistory中。tblHistory是tblMain的复制品(只是更高),它有一个额外的字段来表示唯一的id。我最近添加了一个类型为TimeStamp的字段(我现在知道它已被弃用,但我将在稍后处理它),以避免Microsoft access2007中<