Heim >Datenbank >MySQL-Tutorial >Eine gespeicherte MySQL-Prozedur erstellen, um mithilfe eines Cursors Zeilen aus einer Tabelle abzurufen?
Das Folgende ist eine gespeicherte Prozedur, die Datensätze aus der Namensspalte der Tabelle „student_info“ abruft, die die folgenden Daten enthält:
mysql> Select * from Student_info; +-----+---------+------------+------------+ | id | Name | Address | Subject | +-----+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 125 | Raman | Shimla | Computers | | 127 | Ram | Jhansi | Computers | +-----+---------+------------+------------+ 4 rows in set (0.00 sec) mysql> Delimiter // mysql> CREATE PROCEDURE cursor_defined(OUT val VARCHAR(20)) -> BEGIN -> DECLARE a,b VARCHAR(20); -> DECLARE cur_1 CURSOR for SELECT Name from student_info; -> DECLARE CONTINUE HANDLER FOR NOT FOUND -> SET b = 1; -> OPEN CUR_1; -> REPEAT -> FETCH CUR_1 INTO a; -> UNTIL b = 1 -> END REPEAT; -> CLOSE CUR_1; -> SET val = a; -> END// Query OK, 0 rows affected (0.04 sec) mysql> Delimiter ; mysql> Call cursor_defined2(@val); Query OK, 0 rows affected (0.11 sec) mysql> Select @val; +------+ | @val | +------+ | Ram | +------+ 1 row in set (0.00 sec)
Aus der obigen Ergebnismenge können wir sehen, dass der Wert des val-Parameters „Ram“ ist ", Weil es der letzte Wert der Spalte „Name“ ist.
Das obige ist der detaillierte Inhalt vonEine gespeicherte MySQL-Prozedur erstellen, um mithilfe eines Cursors Zeilen aus einer Tabelle abzurufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!