我正在尝试更好地理解SQL Server事务的细微差别。假设我有一个查询,更新1000个现有行,将其中一列的值更新为1到1000。可以执行此查询,并且当完成时,这些行可能不会按顺序编号。这是因为在我的查询完成之前,另一个查询可能会修改其中一行。
另一方面,如果我将这些更新包装在一个事务中,那么如果任何一个更新失败,我可以使所有更新都失败。但这是否意味着在完成时这些行将保证是连续的?
换句话说,事务是否总是原子的?
另一方面,如果我将这些更新包装在一个事务中,那么如果任何一个更新失败,我可以使所有更新都失败。但这是否意味着在完成时这些行将保证是连续的?
换句话说,事务是否总是原子的?