Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menggulung Set Keputusan MySQL Menggunakan Prosedur Tersimpan?
Looping Over Result Sets dalam MySQL: Pendekatan Berasaskan Prosedur
Pengaturcara selalunya perlu memproses hasil pertanyaan MySQL dalam satu gelung. Tugas ini biasanya dicapai menggunakan fungsi mysql_fetch_assoc dalam PHP atau kaedah serupa dalam bahasa pengaturcaraan lain. Walau bagaimanapun, adalah mungkin juga untuk mencipta prosedur tersimpan dalam MySQL yang menggelungkan hasil pertanyaan.
Untuk mencapai ini, seseorang boleh menggunakan templat prosedur tersimpan seperti berikut:
CREATE PROCEDURE GetFilteredData() BEGIN DECLARE bDone INT; DECLARE var1 CHAR(16); DECLARE var2 INT; DECLARE var3 VARCHAR(50); DECLARE curs CURSOR FOR SELECT something FROM somewhere WHERE some stuff; DECLARE CONTINUE HANDLER FOR NOT FOUND SET bDone = 1; DROP TEMPORARY TABLE IF EXISTS tblResults; CREATE TEMPORARY TABLE IF NOT EXISTS tblResults ( Fld1 type, Fld2 type, ... ); OPEN curs; SET bDone = 0; REPEAT FETCH curs INTO var1, var2, var3; IF whatever_filtering_desired INSERT INTO tblResults VALUES (var1, var2, var3); END IF; UNTIL bDone END REPEAT; CLOSE curs; SELECT * FROM tblResults; END
Pertimbangan:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggulung Set Keputusan MySQL Menggunakan Prosedur Tersimpan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!