存储过程选择为参数

时间:2009-03-17 13:34:13

标签: stored-procedures select

以下是可能的:

EXEC sp_Edu3_DeleteTreeStructure(从TreeStructures中选择TreeStructureId)

SP通常需要一个参数。我想要的是为查询找到的每个TreeStructureId执行SP。

thx,Lieven Cardoen

1 个答案:

答案 0 :(得分:2)

您可以使用CURSOR来执行此操作。

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