Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengulang Melalui Keputusan Pertanyaan T-SQL dan Melaksanakan Prosedur Tersimpan untuk Setiap Baris?
T-SQL Menggelung melalui Keputusan Pertanyaan
Andaikan anda mempunyai pertanyaan yang mendapatkan semula senarai ID daripada jadual:
SELECT @id=table.id FROM table
Anda kemudiannya perlu melaksanakan prosedur tersimpan untuk setiap baris, memasukkan ID dan satu lagi value:
EXEC stored_proc @varName=@id, @otherVarName='test'
Dalam T-SQL, anda boleh mencapai ini menggunakan CURSOR:
DECLARE @id INT DECLARE @name NVARCHAR(100) DECLARE @getid CURSOR SET @getid = CURSOR FOR SELECT table.id, table.name FROM table OPEN @getid FETCH NEXT FROM @getid INTO @id, @name WHILE @@FETCH_STATUS = 0 BEGIN EXEC stored_proc @varName=@id, @otherVarName='test', @varForName=@name FETCH NEXT FROM @getid INTO @id, @name END CLOSE @getid DEALLOCATE @getid
Dalam skrip ini:
Skrip ini membolehkan anda mengulangi hasil pertanyaan dan melaksanakan prosedur yang disimpan untuk setiap baris, mengemas kini nama pembolehubah dan nilai berdasarkan data dalam pertanyaan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Melalui Keputusan Pertanyaan T-SQL dan Melaksanakan Prosedur Tersimpan untuk Setiap Baris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!