1. Tabellen erstellen <br /> Erstellen Sie zunächst zwei Tabellen (Benutzertabelle und Zahlentabelle). Das konkrete Design sieht wie folgt aus: 2. Gespeicherte Prozedur <br /> Schreiben Sie eine gespeicherte Prozedur, um Daten in die Benutzertabelle einzufügen. Der Erstellungsprozess läuft wie folgt ab: Der Code lautet wie folgt BEGINNEN #Routinekörper kommt hier hin... deklariere n Bigint; Menge n = 201121029684; während n <= 201121029694 Tun in Benutzer (Studenten-ID) Werte (n) einfügen; setze n = n + 1; Ende während; ENDE
Die gesamte gespeicherte Prozedur wurde geschrieben. Dies ist natürlich nur ein sehr einfaches Beispiel und dient nur als Referenz. 3. Auslöser Bevor wir den Trigger schreiben, löschen wir zunächst die Benutzerdaten Tabellenbenutzer abschneiden; Jetzt haben wir zwei Tabellen. Was ich tun muss, ist, dass sich die Nummer entsprechend ändert, wenn ich Daten in Benutzer einfüge: Beispielsweise gibt es in der Zahlentabelle Anfangsdaten: ID=1, Num=0; Wenn ich ein Datenelement in Benutzer einfüge, wird das Num-Feld in der Zahlentabelle ausgelöst, um 1 zu erhöhen, was bedeutet, dass die Anzahl der Benutzer aufgezeichnet wird. Lassen Sie uns diese kleine Funktionalität implementieren. Klicken Sie mit der rechten Maustaste auf die Benutzertabelle und wählen Sie Entwurfstabelle
beginnen Update-Nummer Setze Num = (wähle Anzahl(*) aus den Benutzern aus); Ende Fügen Sie nach dem Speichern neue Daten zur Benutzertabelle hinzu und überprüfen Sie die Daten in der Nummer. Sie werden wie durch Zauberhand feststellen, dass sich auch die Daten in der Nummerntabelle geändert haben. Probieren Sie es selbst aus! PS: Gespeicherte Prozeduren müssen vom Programmierer selbst ausgeführt werden, während Trigger, wie der Name schon sagt, automatisch ausgelöst werden. 4. Verwendung des Cursors <br /> Ich möchte jetzt 100 zum Feld student_ID hinzufügen. Ich werde dieses Beispiel verwenden, um einfach die Verwendung von Cursorn zu demonstrieren. Erstellen Sie eine gespeicherte Prozedur. Informationen zur Erstellungsmethode finden Sie in den obigen Schritten. Der Code der gespeicherten Prozedur lautet wie folgt: BEGINNEN #Routinekörper kommt hier hin... Deklariere tmp bigint als Standard 0; deklariere cur CURSOR FOR SELECT student_ID FROM users; -- definiere den Cursor/* 02000 Eine der folgenden Ausnahmen ist aufgetreten: Das Ergebnis einer SELECT INTO-Anweisung oder einer Unterabfrage einer INSERT-Anweisung ist eine leere Tabelle. Die Anzahl der innerhalb der durchsuchten UPDATE- oder DELETE-Anweisung identifizierten Zeilen ist Null. Die in der FETCH-Anweisung referenzierte Cursorposition liegt nach der letzten Zeile der Ergebnistabelle. */ Deklarieren Sie CONTINUE HANDLER FÜR SQLSTATE „02000“, setzen Sie tmp = 0; OPEN cur; – Öffnet den Cursor. FETCH cur INTO tmp; – Bewegt den Cursor einen Schritt nach unten. WHILE (tmp != 0) TUN select tmp; -- Drucken Sie tmp aus und Sie werden feststellen, dass tmp wie ein Zeiger ist. Es zeigt auf die erste Zeile am Anfang. Wenn sich der Cursor einen Schritt bewegt, zeigt er auf die nächste Datensatzzeile UPDATE users SET student_ID = tmp + 100 WO student_ID = tmp; Hole aktuelles in tmp; ENDE WÄHREND; CLOSE cur; -- Cursor schließen END Führen Sie die oben gespeicherte Prozedur aus und Sie werden feststellen, dass sich die Daten in den Benutzern wie gewünscht geändert haben. Das könnte Sie auch interessieren:
|
<<: Der Unterschied zwischen clientWidth, offsetWidth, scrollWidth in JavaScript
>>: So verwalten Sie Docker über die Benutzeroberfläche
1. Übersicht über Module und Anweisungen zur Begr...
In diesem Artikel wird der spezifische Code von j...
Wie kann ich im offiziellen MySQL-Dump-Tool nur e...
Neue Funktion von IE8: Web Slices (Web Slices) Mi...
Werfen wir einen Blick auf die Zabbix-Überwachung...
Dieser Artikel stellt hauptsächlich ein Beispiel ...
1. Docker-Cross-Host-Kommunikation Zu den hostübe...
1. Anzeigeeffekt: 2. HTML-Struktur <div Klasse...
1. Richten Sie HOST auf dem Host-Macbook ein Im v...
Dieser Artikel beschreibt das Beispiel der MySQL-...
Laden Sie zunächst das Installationspaket von der...
Dies ist der zu erzielende Effekt: Sie können seh...
1. Installieren Sie mysql5.6 Docker führt MySQL a...
MySQL Installer bietet eine benutzerfreundliche, ...
Inhaltsverzeichnis 1. Verständnis der Gleichheits...