INSERT之后的SELECT不会选择最近添加的行

时间:2017-10-18 11:39:32

标签: sql sql-server

我猜这是一个非常基本且有些奇怪的问题。假设我有一个包含INSERT(或MERGE)语句的存储过程,后跟SELECT语句。

在运行INSERT时,我是否可以始终假设SELECT语句已完成写入/提交数据?是否可以预期SELECT语句(有时)不会选择所有最近插入的行?如果是这样,我有什么选择让SELECT语句等待INSERT语句完成(在存储过程中)或包括可能未提交的数据?

2 个答案:

答案 0 :(得分:0)

如果它在同一个会话中,它将会看到它,无论是否已提交,除非它已被回滚。

一旦提交,其他会话就可以看到它。

答案 1 :(得分:0)

如果选择'是来自不同的会话,你想读取未提交的数据

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
相关问题