系统时间段临时表是保存其行的历史版本的表。 应使用系统时间段临时表存储数据的当前版本,使用其关联历史记录表透明存储已更新的数据行和已删除的数据行。
系统时间段临时表包括 SYSTEM_TIME 时间段及以下列,这些列捕获一行中的数据为最新版本的开始时间和结束时间。数据库管理器还使用 SYSTEM_TIME 时间段来保存每个表行的历史版本(每当发生更新或删除时)。数据库管理器将这些行存储在历史记录表中,此表以独占方式与系统时间段临时表关联。添加版本控制会在系统时间段临时表与历史记录表之间建立链接。通过系统时间段临时表,查询可访问当前时间点的数据并可检索过去时间点的数据。
系统时间段临时表还包括事务开始标识列。此列捕获影响该行的事务开始执行的时间。如果在单个 SQL 事务内插入或更新多行,那么事务开始标识列的值对于所有行都是相同的,并且不同于其他事务为此列生成的值。此列开始标识列值意味着您可使用事务开始标识列来标识表中由同一事务写入的所有行。