Die einzige Funktion eines MySQL Cursor zu bekommen und zeigen Datensätze durch Query-Parameter . Obwohl diese Definition klingt einfach , ist die Wahrheit, dass , weil Cursor funktionieren anders und unterschiedliche Ergebnisse zurückgeben, von der typischen SELECT-Statements , zu wissen, wie und wann sie zu verwenden MySQL Cursor kann manchmal verwirrend sein. Im Allgemeinen sind die MySQL Cursor eine geeignete Wahl für die Verarbeitung von Daten , die mehrere Zeilen oder Tabellen enthalten , wenn Sie abrufen und verarbeiten, bestimmte Zeilen innerhalb einer Gruppe wollen . Ein kurzes Tutorial können grundlegende Informationen darüber, wie diese Aufgabe zu erfüllen . Anleitung
1
erstellen MySQL Cursor in der Erklärung Abschnitt Ihrer Abfrage. Geben Sie ihm einen eindeutigen Namen - wichtig, weil MySQL ermöglicht Ihnen, mehrere Cursor in einer einzigen Prozedur, Funktion oder Trigger gehören - und binden Sie es an einem SELECT oder SELECT /WHERE-Anweisung . Ein Cursor, der erhalten und zeigt eine ausgewählte Gruppe von Namen der Mitarbeiter in einer Spalte und einem drei - stellige Identifikationsnummer in einem anderen als Anzeige :
DECLARE name_cursor CURSORFORSELECT emp_name von emps WHERE zwischen 100 und 500 emp_id emp_id ;
2
Sandwich der Cursor-Deklaration nach Prozedurvariable und Bedingungen Erklärungen, und bevor optional Handler Erklärungen, wenn Sie dazu gehören in Ihrer Abfrage :
DECLARE emp_name VARCHAR (30); DECLARE emp_id VARCHAR ( 4);
DECLARE name_cursor CURSORFORSELECT emp_name von emps WHERE zwischen 100 und 500 emp_id emp_id ;
DECLARE HANDLER WEITER FÜR NICHT FOUNDSET no_more_rows = TRUE;
3
erstellen einer neuen Tabelle zu speichern und die Informationen anzuzeigen :
CREATE TABLE IF NOT EXISTS EMP_INFO ( emp_name VARCHAR , emp_id VARCHAR) ;
4
Öffnen Sie den Cursor . Eröffnung läuft automatisch die Abfrage nach der SELECT- Anweisung, die Sie gewählt haben, zählt die Anzahl der Zeilen, die Abfrage und speichert das Ergebnis im Speicher für die weitere Verarbeitung :
OPEN name_cursor ;
5
Fetch und verarbeiten die Datenbank-Einträge. Dieser Schritt ist die eigentliche Arbeit des Cursors erfolgt , wie es zurück springt vom letzten auf den ersten Datensatz und durchläuft oder Schlaufen wieder , Zeile für Zeile , um die Informationen, die Sie brauchen, zu extrahieren und fügen diesen in die EMP_INFO Tabelle :
FETCH INTO name_cursor emp_name , emp_id ; INSERT INTO emp_id ( emp_name , emp_id );
(Referenz 3)
6
Schließen Sie den Cursor um freien internen Speicher wird der Cursor mit :
SCHLIESSEN name_cursor ;
7
Zeigen Sie die Ergebnisse Ihres neuen gespeicherten Prozedur :
SELECT * FROM EMP_INFO ;