Heim > Datenbank > MySQL-Tutorial > Hauptteil

Tutorial zum Erstellen, Öffnen und Schließen von Cursorn in MySQL

巴扎黑
Freigeben: 2017-05-18 14:35:02
Original
4036 Leute haben es durchsucht

MySQL erstellt einen Cursor

Cursoren werden mit der DECLARE-Anweisung erstellt. DECLARE benennt den Cursor und definiert die entsprechende SELECT-Anweisung mit WHERE und anderen Klauseln nach Bedarf. Die folgende Anweisung definiert beispielsweise einen Cursor mit dem Namen „ordernumbers“ mithilfe einer SELECT-Anweisung, die alle Bestellungen abruft.

Eingabe:

create procedure processorders()
begin
declare ordernumbers cursor for select order_num from orders;
end;
Nach dem Login kopieren

Analyse: Diese gespeicherte Prozedur macht nicht viel. Die DECLARE-Anweisung wird verwendet, um den Cursor zu definieren und zu benennen, hier sind es Bestellnummern. Nachdem die Verarbeitung der gespeicherten Prozedur abgeschlossen ist, verschwindet der Cursor (da er auf die gespeicherte Prozedur beschränkt ist). Nachdem Sie den Cursor definiert haben, können Sie ihn öffnen.

MySQL öffnet und schließt Cursor

Der Cursor wird mit der OPEN CURSOR-Anweisung geöffnet:

Eingabe:

open ordernumbers;
Nach dem Login kopieren

Analyse: Die Abfrage wird ausgeführt, während die OPEN-Anweisung verarbeitet wird, und die abgerufenen Daten werden zum Durchsuchen und Scrollen gespeichert.

Nachdem die Cursorverarbeitung abgeschlossen ist, sollte die folgende Anweisung verwendet werden, um den Cursor zu schließen:

Eingabe:

close ordernumbers;
Nach dem Login kopieren

Analyse: CLOSE gibt den gesamten internen Speicher und die verwendeten Ressourcen frei durch den Cursor, daher sollte jeder Cursor geschlossen werden, wenn er nicht mehr benötigt wird.

Nachdem ein Cursor geschlossen wurde, kann er nicht mehr verwendet werden, ohne ihn erneut zu öffnen. Es ist jedoch nicht erforderlich, ihn erneut zu deklarieren, um einen deklarierten Cursor zu verwenden. Öffnen Sie ihn einfach mit der OPEN-Anweisung.

Implizites Schließen Wenn Sie den Cursor nicht explizit schließen, schließt MySQL ihn automatisch, wenn die END-Anweisung erreicht wird.

Das Folgende ist eine modifizierte Version des vorherigen Beispiels:

Eingabe:

create procedure processorders()
BEGIN
-- declare the cursor
declare ordernumbers cursor for
select order_num from orders;
-- Open the cursor
Open ordernumbers;
-- close the cursor
close ordernumbers;
END;
Nach dem Login kopieren

Analyse: Diese gespeicherte Prozedur deklariert, öffnet und schließt einen Cursor. Mit den abgerufenen Daten wird jedoch nichts gemacht.

Das obige ist der detaillierte Inhalt vonTutorial zum Erstellen, Öffnen und Schließen von Cursorn in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage