2009-03-17 1 views

답변

2

커서를 사용하여이 작업을 수행 할 수 있습니다.

DECLARE @treeStructureId int 

DECLARE TreeStructureCursor CURSOR FOR 
    SELECT 
     TreeStructureId 
    FROM 
     TreeStructures 

OPEN TreeStructureCursor 

FETCH NEXT FROM TreeStructureCursor 
INTO @treeStructureId 

WHILE @@FETCH_STATUS = 0 
BEGIN 
    EXEC sp_Edu3_DeleteTreeStructure(@treeStructureId) 

    FETCH NEXT FROM TreeStructureCursor 
    INTO @treeStructureId 
END 

CLOSE TreeStructureCursor 
DEALLOCATE TreeStructureCursor 
+0

Thx, Robin, 나는 커서로 할 수 있음을 알고 있었지만 커서없이 수행 할 수 있는지 궁금해하고있었습니다. (나는 그것을 할 수 있다고 생각하지 않는다 ...) –

+0

모든 ID가 포함 된 XML을 반환하도록 SELECT 문을 변경 한 다음이 XML을 매개 변수로 사용하고 1-many ID로 작업하도록 저장 프로 시저를 수정할 수 있습니다. 네가 맞을지라도 스토어드 프로 시저는 당신이 묻는대로 할 수 없다. 함수가 더 가깝지 만 데이터를 삭제할 수 없습니다. –