Teknikdagboken En blogg om teknik i vardagen

8Dec/100

Köra en stored procedure för varje rad i SELECT

Idag behövde jag ta bort ca 300 rader och kunde få ut berörda rader med en SELECT fråga. För att ta bort en rad behövde jag köra en stored procedure för att även ta bort relaterande data. Detta löstes smidigt genom följande script som jag hittade på Stackoverflow:

declare @field1 int
declare @field2 int
declare cur CURSOR LOCAL for
    select field1, field2 from sometable where someotherfield is null

open cur

fetch next from cur into @field1, @field2

while @@FETCH_STATUS = 0 BEGIN

    --execute your sproc on each row
    exec uspYourSproc @field1, @field2

    fetch next from cur into @field1, @field2
END

close cur
deallocate cur

Intressant inlägg?

Prenumerare på vårat RSS?

Kommentarer (0) Trackbacks (0)

Ännu inga kommentarer


Leave a comment

Inga trackbacks ännu.