Я читал на Уровнях изоляции транзакций, и я не уверен, что все правильно понимаю. Мне нужна помощь.Проблема с уровнем изоляции транзакции
Пожалуйста, обратите внимание на следующее Csharp псевдокод:
- Использование хранимой процедуры 1, открытую транзакцию
- Вставка или обновление таблицы 1
- Использование хранимой процедуры 2, вставки или обновления таблицы 2, на основе данных по таблице 1
- Обязательная сделка.
На шаге 3, как я могу не рассматривать данные, которые были обновлены на шаге 2? Должен ли я устанавливать уровень изоляции транзакций, когда я создаю транзакцию в своем .Net-коде. Вот псевдословный код хранимой процедуры SQL-сервера.
select @count=count(*) from table1;
if @count > 1
update table2
уточнить; вы хотите, чтобы шаг 3 отображал данные в таблице 1, как это было до шага 2? –
@ DanDef: На уровне 10 000 футов это правда. На уровне 100 футов шаг 3 делает намного больше, и поэтому последовательность шагов не может быть изменена. –