using SET TRANSACTION ISOLATION LEVEL SNAPSHOT statement you can ensure that data read by any statement in a transaction will be transactionally consistent with how that data existed at the start of the transaction. SNAPSHOT transactions do not block other transactions from writing data.