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 Analyse des Linux-NFS-Mechanismus anhand von Fällen

In Fortsetzung des vorherigen Artikels erstellen ...

Eine bunte Katze unter Linux

Freunde, die das Linux-System verwendet haben, mü...

Detaillierte Erklärung der Standort- und Umschreibenutzung in nginx

1. Zusammenfassung der Standortnutzung Der Stando...

Detaillierte Erläuterung des Mysql Self-Join-Abfragebeispiels

Dieser Artikel beschreibt die Mysql-Self-Join-Abf...

Ein Artikel, der Ihnen hilft, mehr über JavaScript-Arrays zu erfahren

Inhaltsverzeichnis 1. Die Rolle des Arrays: 2. De...

JavaScript implementiert Feuerwerkseffekte mit Soundeffekten

Ich habe eine halbe Stunde gebraucht, um den Code...

Detaillierte Erklärung zum Ändern des Standardports von nginx

Finden Sie zunächst heraus, wo sich die Konfigura...

Vue realisiert den Card-Flip-Effekt

In diesem Artikelbeispiel wird der spezifische Co...

Reiner CSS3-Code zur Implementierung einer laufenden Uhr

Wirkung der OperationCode-Implementierung html &l...

So verwenden Sie das Schreiben von Dateien zum Debuggen einer Linux-Anwendung

Unter Linux ist alles eine Datei, daher besteht d...

Umfassende Inventarisierung wichtiger Logdateien in MySQL

Inhaltsverzeichnis Einführung Protokollklassifizi...

Lösung für Win10 ohne Hyper-V

Suchen Sie immer noch nach einer Möglichkeit, Hyp...