SQL Server переносит Select… Insert Queries в неявную транзакцию?
Когда я выполняю запрос выбора / вставки, SQL Server автоматически создает неявную транзакцию и, таким образом, обрабатывает ее как одну атомарную операцию?
Возьмите следующий запрос, который вставляет значение в таблицу, если его там еще нет:
INSERT INTO Table1 (FieldA)
SELECT 'newvalue'
WHERE NOT EXISTS (Select * FROM Table1 where FieldA='newvalue')
Есть ли возможность "нового значения"? вставляется в таблицу другим пользователем между оценкой предложения WHERE и выполнением предложения INSERT, если оно явно не включено в транзакцию?