SQL Server: выбор 1 строки приводит к изменению 1 + 3 строки? - PullRequest
4 голосов
/ 08 ноября 2010

Я выбираю 1 строку из таблицы:

select * from LCTs WHERE LCTGUID = 'B642B9E6-779A-4FD0-8514-294EAF87A9A6'

(1 row(s) affected)

(3 row(s) affected)

Как я могу получить 4 строки, затронутых одним выбором (особенно если он возвращает только одну строку)?

Бонусинформация:

  • SQL Server 2000
  • LCT - это реальная таблица (т.е. не представление или UDF)
  • в таблице нет триггеров
  • это SQL Server 2000, который не имеет аудита DDL

Еще более странным является то, что если я обновлю эту одну строку:

update LCTs SET IsDirty = 1 WHERE LCTGUID = 'B642B9E6-779A-4FD0-8514-294EAF87A9A6'

(1 row(s) affected)   

(5 row(s) affected)

Как происходит обновление одной строкивлияет на 6 строк в таблице, без триггеров, в SQL Server 2000?

1 Ответ

10 голосов
/ 08 ноября 2010

Это может произойти, если у вас включен Show Actual Execution Plan. Второй счетчик строк предназначен для переноса данных плана выполнения.

...