【发布时间】:2018-07-21 14:40:55
【问题描述】:
我有一个 SQL Server 时态表“人”,其记录如下:
name | modified_by
-------------------------
John | 1
如果我执行以下 sql 语句
update person set modified_by = 2 where name = 'John'
delete from person where name = 'John'
我在历史表中看到两条记录,modified_by = 1 和 2。
如果我在一个事务中执行这两个语句
begin transaction
update person set modified_by = 2 where name = 'John'
delete from person where name = 'John'
commit transaction
我只看到历史表中的一条记录,modified_by = 1
这是预期的行为吗?为什么?
【问题讨论】:
标签: sql-server temporal