Merkmale des MySQL Cursors:
Schritte zur Verwendung eines Cursors:
Die Hauptschritte bei der Verwendung des Cursors in MySQL zum Lesen jedes Ergebnis -Set -Datensatzes sind unten angezeigt.
Einen Cursor deklarieren:
Cursor_name cursor für select_statement;Die Cursorvariable muss für die Iterierung des von der Auswahlanweisung zurückgegebenen Ergebnisses definiert werden.
Öffnen Sie den Cursor
Öffnen cursor_name;Der Cursor muss sich öffnen, um den Ausgangspunkt des Ergebnissatzes zu verweisen.
Holen den Cursor
Fetch cursor_name in variable_list;Mit dem Befehl Abrufen wird die in der zum Zeitpunkt der Erklärung des Cursor verwendeten Felder in der Abfrage ausgewählten Abfrage verwendet.
Schließen Sie den Cursor
Cursor_Name schließen;Der Cursor ist erforderlich, um das Ergebnissatz zurückzusetzen und die Referenz auf die Ergebnismenge zu entfernen.
Voraussetzungen:
Sie müssen die erforderlichen Tabellen mit Daten erstellen, um die Verwendung eines Cursors in MySQL zu kennen. Öffnen Sie das Terminal und führen Sie den folgenden Befehl aus, um eine Verbindung mit dem MySQL -Server herzustellen, wenn kein Passwort für den Stammbenutzer vorhanden ist.
$ sudo mysql -u rootFühren Sie den folgenden Befehl aus, um die Datenbank auszuwählen.
Verwenden Sie test_db;Führen Sie den folgenden Befehl aus, um eine Datenbank mit dem Namen zu erstellen test_db.
Datenbank erstellen test_db;Führen Sie die folgende Anfrage aus, um eine Tabelle mit dem Namen zu erstellen sales_persons mit vier Feldern.
Erstellen von Tabellen Sales_Persons (Führen Sie die folgende Anfrage aus, um drei Datensätze in die Einfügung einzulegen Verkäufer Tisch.
In 'Sales_Persons' ('ID', 'Name', 'E -Mail', 'contact_no') einfügen (null, 'Kamal Hasan', '[email protected] ',' 0191275634 '),Führen Sie die folgende Anfrage aus, um eine Tabelle mit dem Namen zu erstellen Verkauf mit vier Feldern, die einen Fremdschlüssel enthält, der die Eins-zu-Viele-Beziehung aus dem erstellt sales_persons Tisch zum Verkauf Tisch.
Tischverkäufe erstellen (Führen Sie die folgende Anfrage aus, um vier Datensätze in die Einfügung einzulegen Verkauf Tisch.
Einfügen in "Verkauf" ("ID", "Sales_date", "Betrag", "sp_id") WerteVerwendung von MySQL Cursor:
Der Cursor wird hauptsächlich in der MySQL -Prozedur oder -Funktion verwendet, die eine oder mehrere Auswahlabfrage enthält, und der deklarierte Cursor iteriert jeden Datensatz des von der Abfrage zurückgegebenen Ergebnisses. Erstellen Sie eine MySQL -Funktion namens namens Berechnen Sie_Bonus Mit der folgenden Erklärung, die ein ganzzahliges Argument nimmt und einen Float -Wert zurückgibt. Die ausgewählte Abfrage, die in der Funktion verwendet wurde. Die Funktion des Cursors besteht darin, 15% des Gesamtumsatzes als Bonus zu berechnen, wenn der Gesamtverkaufsbetrag mehr als 10000 beträgt. Andernfalls beträgt der Bonus 10% des Gesamtumsatzes. Die Funktion gibt den Bonusbetrag basierend auf dem ID -Wert des Verkäufers zurück. Führen Sie die folgende Anweisung aus der MySQL -Eingabeaufforderung aus, nachdem Sie die Datenbank ausgewählt haben, um die Funktion zu erstellen.
Abgrenzer //Führen Sie die folgende Anfrage aus, um alle Datensätze der sales_persons Tisch.
Wählen Sie * aus Sales_Persons;Führen Sie die folgende Anfrage aus, um alle Datensätze der Verkauf Tisch.
Aus dem Verkauf auswählen;Führen Sie die folgende Anfrage aus, um die anzurufen Calculate_bonus () Funktion von MySQL mit dem Argumentwert, 1. Laut der Verkaufstabelle gibt es drei Rekorde für den Verkäufer, dessen ID 1 beträgt. Der Bonus beträgt also 15% Rabatt (6700000+900000+800000).
Wählen Sie Calculate_Bonus (1);Führen Sie die folgende Anfrage aus, um die anzurufen Calculate_bonus () Funktion von MySQL mit dem Argumentwert, 2. Laut der Verkaufstabelle gibt es keinen Rekord für den Verkäufer, dessen ID 2 beträgt. Der Bonus wird also 0 sein.
Wählen Sie Calculate_Bonus (2);Führen Sie die folgende Anfrage aus, um die anzurufen Calculate_bonus () Funktion von MySQL mit dem Argumentwert, 3. Laut der Verkaufstabelle gibt es einen Rekord für den Verkäufer, dessen ID 3 beträgt. Der Bonus beträgt also 15% von 5634555.
Wählen Sie Calculate_Bonus (3);Abschluss:
MySQL Cursor erleichtert die spezifische Aufgabe, indem jede Tabellenzeile iteriert wird. MySQL Cursor wurde in diesem Tutorial unter Verwendung einer MySQL -Funktion gezeigt. Der MySQL Cursor kann auch innerhalb der MySQL -Prozedur verwendet werden. Ich hoffe.