So verwenden Sie Cursor-Trigger in MySQL

So verwenden Sie Cursor-Trigger in MySQL

Cursor

Die von der Auswahlabfrage zurückgegebenen Zeilen werden als Ergebnismenge bezeichnet. Die Zeilen in der Ergebnismenge werden basierend auf der von Ihnen eingegebenen SQL-Anweisung abgerufen. Wenn Sie keinen Cursor verwenden, können Sie weder die erste Zeile, die ersten zehn Zeilen noch die nächste Zeile abrufen.

Nachfolgend sind einige häufige Cursorphänomene und -merkmale aufgeführt.

  • Möglichkeit, einen Cursor als schreibgeschützt zu markieren, was bedeutet, dass Daten gelesen, aber nicht aktualisiert oder gelöscht werden können
  • Möglichkeit zur Steuerung der ausführbaren Richtungsoperationen (vorwärts, rückwärts, erste, letzte, absolute und relative Positionen usw.)
  • Möglichkeit, einige Aktionen als bearbeitbar und andere als nicht bearbeitbar zu markieren
  • Kann auf einen Bereich beschränkt werden, sodass der Cursor entweder nur für die Anfrage, die ihn erstellt hat, oder für alle Anfragen zugänglich ist.
  • Cursordeklarationen müssen vor Handlerdeklarationen und nach
  • Variablen- und Bedingungsdeklarationen.
  • Dabei ist zu beachten, dass beim Öffnen eines Cursors dieser nicht auf den ersten Datensatz zeigt, sondern auf die Vorderseite des ersten Datensatzes.

Hier sind die Schritte zur Verwendung des Cursors

  • Deklarieren Sie einen Cursor – Sie haben in diesem Prozess noch nicht mit dem Abrufen von Daten begonnen
  • Öffnet einen Cursor zur Verwendung
  • Abrufen von Zeilen
  • Schließen Sie den Cursor und lassen Sie den Cursor los
DECLARE cs CURSOR 
FÜR 
WÄHLEN *
VON Kunden
Wobei cust_email NULL ist;

Ich dachte, alles wäre in Ordnung, aber es gab eine Fehlermeldung

Bildbeschreibung hier einfügen

An der Syntax ist nichts auszusetzen.

Versuchen Sie, vor cs ein @ hinzuzufügen. Die Fehlermeldung wird beim Ausführen weiterhin angezeigt.

Manche Leute sagen, dass Cursor nur in gespeicherten Prozeduren verwendet werden können. Stimmt das?

Versuchen wir nun, Cursor in gespeicherten Prozeduren zu verwenden

PROZEDUR ERSTELLEN Prozedur1
()
BEGINNEN
	DECLARE cur1 CURSOR 
	FÜR 
	WÄHLEN * 
	VON Kunden 
	WO cust_id NULL IST tianyoutianyou;
ENDE

Immer noch Fehler

Erneut ändern

Trennzeichen //
PROZEDUR ERSTELLEN Prozedur1
()
BEGINNEN
	DECLARE cur1 CURSOR 
	FÜR 
	WÄHLEN * 
	VON Kunden 
	Wobei cust_id NULL ist;
ENDE

Dieses Mal haben wir den Cursor erfolgreich deklariert

Haben wir den Cursor erfolgreich erstellt, weil wir das Trennzeichen geändert haben?

Versuchen wir es noch einmal

PROZEDUR ERSTELLEN procedure1()
DECLARE cur1 CURSOR 
FÜR 
WÄHLEN * 
VON Kunden 
Wobei cust_id NULL ist;

Auch das ist falsch. Versuchen wir herauszufinden, ob der Cursor erfolgreich erstellt werden kann, ohne eine gespeicherte Prozedur zu verwenden.

Trennzeichen //
DECLARE cur2 CURSOR
FÜR 
WÄHLEN *
VON Bestellungen;

Oder vielleicht das

Trennzeichen //
DECLARE cur2 CURSOR
FÜR 
WÄHLEN *
VON Bestellungen //

Diese beiden Typen haben auch 8 Zeilen

Nach so vielen Versuchen ist die einzige erfolgreiche Aussage die folgende

Trennzeichen //
PROZEDUR ERSTELLEN procedure1()
BEGINNEN 
	DECLARE cur1 CURSOR 
	FÜR 
	WÄHLEN * 
	VON Kunden 
	Wobei cust_id NULL ist;
ENDE

Als nächstes verwenden wir den Cursor, um Daten abzurufen

Leider verfügt MySQL nicht über einen Datentyp wie %ROWTYPE von Oracle. Versuchen wir, mithilfe eines Cursors einen bestimmten Datentyp aus der Kundentabelle abzurufen.

auslösen

Ein Trigger ist eine bestimmte gespeicherte Prozedur, die automatisch ausgeführt wird, wenn eine bestimmte Aktivität in der Datenbank auftritt. Im Allgemeinen werden Einschränkungen schneller verarbeitet als Trigger, daher sollten Einschränkungen nach Möglichkeit verwendet werden.

Dies ist das Ende dieses Artikels über die Verwendung von Cursor-Triggern in MySQL. Weitere relevante Inhalte zu MySQL-Cursor-Triggern finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • MySQL-Cursorfunktionen und -Verwendung
  • Definition und Verwendung des MySQL-Cursors
  • So deklarieren Sie einen Cursor in MySQL
  • Detaillierte Einführung zum MySQL-Cursor

<<:  Echarts-Beispielcode zur Verwendung mehrerer X-Achsen zur Erstellung einer siebentägigen Wettervorhersage

>>:  Detaillierte Erklärung zur Verwendung der Clip-Path-Eigenschaft in CSS

Artikel empfehlen

Detaillierte Erläuterung des Speichermodells der JVM-Serie

Inhaltsverzeichnis 1. Speichermodell und Laufzeit...

Die Vue-Konfigurationsdatei generiert automatisch Routing- und Menüinstanzcode

Inhaltsverzeichnis Vorne geschrieben router.json ...

MySQL-Installationsinformationen unter Linux-Server anzeigen

Sehen Sie sich die Installationsinformationen von...

Lösung für die Willkommensmeldung im Notfallmodus beim Booten von CentOS7.4

Heute habe ich eine virtuelle Maschine für ein Ex...

Verwenden Sie vue2+elementui für Hover-Prompts

Die Hover-Prompts von Vue2+elementui sind in exte...

Einführung in MySQL-Isolationsebene, Sperre und MVCC

Ziel dieses Artikels ist es, die Beziehung zwisch...

Implementierung der MySQL-Konfiguration SSL-Zertifikat-Login

Inhaltsverzeichnis Vorwort 1. MySQL ermöglicht SS...

Detaillierte Erklärung des Explain-Typs in MySQL

Einführung: In vielen Fällen denken viele Leute, ...

JS realisiert die automatische Wiedergabe der Timeline

Vor kurzem habe ich einen solchen Effekt implemen...