如何多次执行存储过程

Pri*_*ton 6 sql stored-procedures sql-server-2008

我有一个存储过程,我执行如下:

exec sp_storedProc '123','ME', '333',NULL
Run Code Online (Sandbox Code Playgroud)

我需要指定400个不同的值.如何一次执行具有不同值的存储过程?

Rah*_*thi 12

您可以尝试使用CURSORS

DECLARE @param INT

DECLARE curs CURSOR LOCAL FAST_FORWARD FOR
    SELECT parameter FROM table_name WHERE ...

OPEN curs

FETCH NEXT FROM curs INTO @param

WHILE @@FETCH_STATUS = 0 BEGIN
    EXEC sp_storeProc  @param
    FETCH NEXT FROM curs INTO @param
END

CLOSE curs
DEALLOCATE curs
Run Code Online (Sandbox Code Playgroud)

  • 有没有不使用游标或while循环的替代方法? (2认同)