Re[8]: Соответствие версий родительских и дочерних записей
От: Федя  
Дата: 06.12.07 09:01
Оценка:
Здравствуйте, Dianbi, Вы писали:

D>если оба селекта обернуть в транзакцию с "самым крутым" isolation level

D>никто ничего не удалит пока она не завершится

да, это понятно, вот пример

В одном окне Query Analizer запускаем
create table Parent(ParentId int)
create table Child(ParentId int)

insert Parent values(1)
insert Parent values(2)
insert Parent values(3)

insert Child values(1)
insert Child values(2)
insert Child values(3)

set transaction isolation level repeatable read

begin tran

select * from Parent

declare @i int
set @i = 0
while @i < 100000 set @i = @i + 1

select * from Child

commit tran

drop table Parent
drop table Child


и, пока читает, в другом окне
begin tran
  delete Parent
  delete Child
commit tran


Давайте с транзакциями не будем продолжать, интересует вариант без них.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.