Имам курсор на SQL Server 2005, работещ върху променлива на таблица, наречена @workingSet
.
Понякога редовете могат да бъдат свързани и в този случай аз обработвам реда, който съм извлякъл, и свързаните редове едновременно. След това премахвам свързаните записи от @workingset
, тъй като не е необходимо да обработвам след това в цикъла.
В @workingSet
със 7 реда, първите два са свързани, така че когато обработвам 1, обработвам и 2. Премахвам ред 2 от източника на курсора (@workingSet
) и след това извличам следващия. Проблемът е, че връща втория ред в @workingset
(този, който изтрих при предишната итерация).
Останах с впечатлението, че това може да се направи, т.е. изтриване на елемент от източник, върху който работи курсор, и той ще уважи изтриването при последващи извличания.