Heim Datenbank MySQL-Tutorial Einfaches Tutorial zum erweiterten MySQL-Cursor (3).

Einfaches Tutorial zum erweiterten MySQL-Cursor (3).

Feb 09, 2017 pm 03:13 PM
mysql 游标 进阶

MySQL Cursor Simple Tutorial

Ab MySQL V5.5 wurde eine große Änderung vorgenommen, nämlich die Verwendung von InnoDB als Standardspeicher-Engine. InnoDB unterstützt Transaktionen und verfügt über zugehörige RDBMS-Funktionen: ACID-Transaktionsunterstützung, Datenintegrität (unterstützt Fremdschlüssel), Disaster-Recovery-Funktionen usw.

Fassen Sie nun kurz das Wissen über Cursor zusammen.

(1) Den Cursor verstehen

Ein Cursor ist einfach der abgefragte Datenindex. Durch die Bedienung des Cursors (erste Position, letzte Position, vorherige Position, Die nächste Position) kann durchlaufen werden aus den Daten.

Einer der Hauptgründe für die Verwendung eines Cursors besteht darin, Erfassungsvorgänge in die Verarbeitung einzelner Datensätze umzuwandeln. Nach dem Abrufen von Daten aus der Datenbank mithilfe der SQL-Sprache wird das Ergebnis in einem Speicherbereich abgelegt, und das Ergebnis ist häufig eine Sammlung mit mehreren Datensätzen. Der Cursor-Mechanismus ermöglicht es Benutzern, zeilenweise auf diese Datensätze im SQL-Server zuzugreifen und diese Datensätze nach den eigenen Wünschen anzuzeigen und zu bearbeiten.

In der Datenbank ist der Cursor ein sehr wichtiges Konzept. Cursor bieten ein flexibles Mittel zum Bearbeiten von aus einer Tabelle abgerufenen Daten. Im Wesentlichen sind Cursor ein Mechanismus, der jeweils einen Datensatz aus einer Ergebnismenge extrahieren kann, die mehrere Datensätze enthält. Ein Cursor ist immer einer SQL-SELECT-Anweisung zugeordnet, da ein Cursor aus einer Ergebnismenge (die aus null, einem oder mehreren Datensätzen bestehen kann, die von der zugehörigen SELECT-Anweisung abgerufen werden können) und einer Cursorposition in der Ergebnismenge besteht, die auf einen bestimmten Datensatz zeigt . Wenn Sie sich entscheiden, eine Ergebnismenge zu verarbeiten, müssen Sie einen Cursor deklarieren, der auf die Ergebnismenge zeigt. Wenn Sie jemals ein Programm geschrieben haben, das Dateien in der Sprache C verarbeitet, ist der Cursor wie das Dateihandle, das Sie erhalten, wenn Sie eine Datei öffnen. Solange die Datei erfolgreich geöffnet wird, kann das Dateihandle die Datei darstellen. Für Cursor ist die Logik dieselbe. Es ist ersichtlich, dass der Cursor die Ergebnismenge aus der Basistabelle auf ähnliche Weise verarbeiten kann wie ein herkömmliches Programm, das eine Flatfile liest, wodurch die Daten in der Tabelle dem Programm in Form einer Flatfile präsentiert werden.

Wir wissen, dass relationale Datenbankverwaltungssysteme im Wesentlichen satzorientiert sind. In MS SQL SERVER gibt es keinen Ausdruck zur Beschreibung eines einzelnen Datensatzes in einer Tabelle, es sei denn, eine WHERE-Klausel wird verwendet, um nur einen Datensatz zu begrenzen ausgewählt. Daher müssen wir Cursor verwenden, um die Datenverarbeitung für einzelne Datensätze durchzuführen. Es ist ersichtlich, dass der Cursor es der Anwendung ermöglicht, dieselben oder unterschiedliche Vorgänge für jede Zeile in der von der Abfrageanweisung „select“ zurückgegebenen Zeilenergebnismenge auszuführen, anstatt dieselbe Operation für die gesamte Ergebnismenge auf einmal auszuführen Fähigkeit, den gleichen Vorgang an den Daten in der Tabelle basierend auf der Cursorposition durchzuführen. Darüber hinaus ist es der Cursor, der das sammlungsorientierte Datenbankverwaltungssystem und die zeilenorientierte Programmierung verbindet und die beiden Daten ermöglicht Verarbeitungsmethoden zur Kommunikation.

Wenn es sich bei den von Ihnen abgerufenen Daten während des Datenbankentwicklungsprozesses nur um einen Datensatz handelt, verwendet der von Ihnen geschriebene Transaktionsanweisungscode häufig die SELECT INSERT-Anweisung. Wir stoßen jedoch häufig auf Situationen, in denen wir Datensätze einzeln aus einer bestimmten Ergebnismenge lesen. Wie kann man dieses Problem lösen? Cursor bieten uns eine äußerst hervorragende Lösung – das heißt, die Verwendung von Cursorn

ist eine lesbare Kennung, um zu identifizieren, wo die Daten abgerufen wurden.

(2) Cursoreigenschaften

1, schreibgeschützt

2, nicht scrollend

3, unempfindlich

(3 ) Verwenden von Cursorn

Es sollte betont werden, dass der Cursor definiert werden muss, bevor der Handler definiert wird, aber die Variable muss definiert werden, bevor der Cursor definiert wird. Die Reihenfolge ist Variablendefinition – Cursordefinition – Handler.

1. Definieren Sie einen Cursor

DECLARE cursor_name CURSOR FOR select_statement
Nach dem Login kopieren

Diese Anweisung deklariert einen Cursor. In einem Unterprogramm können auch mehrere Cursor definiert werden. Jeder Cursor in einem Block muss eindeutig benannt werden. Nach der Deklaration des Cursors handelt es sich ebenfalls um eine einzelne Operation.

2. Cursor OPEN

OPEN cursor_name
Nach dem Login kopieren

Diese Anweisung öffnet einen zuvor deklarierten Cursor.

3. Cursor FETCH

FETCH cursor_name INTO var_name [, var_name] ...
Nach dem Login kopieren

Diese Anweisung liest die nächste Zeile (sofern es eine nächste Zeile gibt) mit dem angegebenen offenen Cursor und geht weiter der Cursorzeiger auf diese Zeile.

4. 游标CLOSE

CLOSE cursor_name
Nach dem Login kopieren

这个语句关闭先前打开的游标,注意,用完后必须关闭。

(四)示例

下面是一个存储过程,里面用到游标,逐条更新数据(批量更新数据)

BEGIN
 DECLARE  no_more_record INT DEFAULT 0;
 DECLARE  pID BIGINT(20);
 DECLARE  pValue DECIMAL(15,5);
 DECLARE  cur_record CURSOR FOR   SELECT colA, colB from tableABC;  /*首先这里对游标进行定义*/
 DECLARE  CONTINUE HANDLER FOR NOT FOUND  SET  no_more_record = 1; /*这个是个条件处理,针对NOT FOUND的条件,当没有记录时赋值为1*/
 
 
 OPEN  cur_record; /*接着使用OPEN打开游标*/
 FETCH  cur_record INTO pID, pValue; /*把第一行数据写入变量中,游标也随之指向了记录的第一行*/
 
 
 WHILE no_more_record != 1 DO
 INSERT  INTO testTable(ID, Value)
 VALUES  (pID, pValue);
 FETCH  cur_record INTO pID, pValue;
 
 END WHILE;
 CLOSE  cur_record;  /*用完后记得用CLOSE把资源释放掉*/
END
Nach dem Login kopieren

以上就是 mysql进阶(三)游标简易教程的内容,更多相关内容请关注PHP中文网(www.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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

MySQL: Die einfache Datenverwaltung für Anfänger MySQL: Die einfache Datenverwaltung für Anfänger Apr 09, 2025 am 12:07 AM

MySQL ist für Anfänger geeignet, da es einfach zu installieren, leistungsfähig und einfach zu verwalten ist. 1. Einfache Installation und Konfiguration, geeignet für eine Vielzahl von Betriebssystemen. 2. Unterstützung grundlegender Vorgänge wie Erstellen von Datenbanken und Tabellen, Einfügen, Abfragen, Aktualisieren und Löschen von Daten. 3. Bereitstellung fortgeschrittener Funktionen wie Join Operations und Unterabfragen. 4. Die Leistung kann durch Indexierung, Abfrageoptimierung und Tabellenpartitionierung verbessert werden. 5. Backup-, Wiederherstellungs- und Sicherheitsmaßnahmen unterstützen, um die Datensicherheit und -konsistenz zu gewährleisten.

So erstellen Sie Navicat Premium So erstellen Sie Navicat Premium Apr 09, 2025 am 07:09 AM

Erstellen Sie eine Datenbank mit Navicat Premium: Stellen Sie eine Verbindung zum Datenbankserver her und geben Sie die Verbindungsparameter ein. Klicken Sie mit der rechten Maustaste auf den Server und wählen Sie Datenbank erstellen. Geben Sie den Namen der neuen Datenbank und den angegebenen Zeichensatz und die angegebene Kollektion ein. Stellen Sie eine Verbindung zur neuen Datenbank her und erstellen Sie die Tabelle im Objektbrowser. Klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Daten einfügen, um die Daten einzufügen.

Kann ich das Datenbankkennwort in Navicat abrufen? Kann ich das Datenbankkennwort in Navicat abrufen? Apr 08, 2025 pm 09:51 PM

Navicat selbst speichert das Datenbankkennwort nicht und kann das verschlüsselte Passwort nur abrufen. Lösung: 1. Überprüfen Sie den Passwort -Manager. 2. Überprüfen Sie Navicats "Messnot Password" -Funktion; 3.. Setzen Sie das Datenbankkennwort zurück; 4. Kontaktieren Sie den Datenbankadministrator.

MySQL: Einfache Konzepte für einfaches Lernen MySQL: Einfache Konzepte für einfaches Lernen Apr 10, 2025 am 09:29 AM

MySQL ist ein Open Source Relational Database Management System. 1) Datenbank und Tabellen erstellen: Verwenden Sie die Befehle erstellte und creatEtable. 2) Grundlegende Vorgänge: Einfügen, aktualisieren, löschen und auswählen. 3) Fortgeschrittene Operationen: Join-, Unterabfrage- und Transaktionsverarbeitung. 4) Debugging -Fähigkeiten: Syntax, Datentyp und Berechtigungen überprüfen. 5) Optimierungsvorschläge: Verwenden Sie Indizes, vermeiden Sie ausgewählt* und verwenden Sie Transaktionen.

Wie kann ich das Datenbankkennwort in Navicat für Mariadb anzeigen? Wie kann ich das Datenbankkennwort in Navicat für Mariadb anzeigen? Apr 08, 2025 pm 09:18 PM

Navicat für MariADB kann das Datenbankkennwort nicht direkt anzeigen, da das Passwort in verschlüsselter Form gespeichert ist. Um die Datenbanksicherheit zu gewährleisten, gibt es drei Möglichkeiten, Ihr Passwort zurückzusetzen: Setzen Sie Ihr Passwort über Navicat zurück und legen Sie ein komplexes Kennwort fest. Zeigen Sie die Konfigurationsdatei an (nicht empfohlen, ein hohes Risiko). Verwenden Sie Systembefehlsleitungs -Tools (nicht empfohlen, Sie müssen die Befehlszeilen -Tools beherrschen).

MySQL und SQL: Wesentliche Fähigkeiten für Entwickler MySQL und SQL: Wesentliche Fähigkeiten für Entwickler Apr 10, 2025 am 09:30 AM

MySQL und SQL sind wesentliche Fähigkeiten für Entwickler. 1.MYSQL ist ein Open -Source -Relational Database Management -System, und SQL ist die Standardsprache, die zum Verwalten und Betrieb von Datenbanken verwendet wird. 2.MYSQL unterstützt mehrere Speichermotoren durch effiziente Datenspeicher- und Abruffunktionen, und SQL vervollständigt komplexe Datenoperationen durch einfache Aussagen. 3. Beispiele für die Nutzung sind grundlegende Abfragen und fortgeschrittene Abfragen wie Filterung und Sortierung nach Zustand. 4. Häufige Fehler umfassen Syntaxfehler und Leistungsprobleme, die durch Überprüfung von SQL -Anweisungen und Verwendung von Erklärungsbefehlen optimiert werden können. 5. Leistungsoptimierungstechniken umfassen die Verwendung von Indizes, die Vermeidung vollständiger Tabellenscanning, Optimierung von Join -Operationen und Verbesserung der Code -Lesbarkeit.

So erstellen Sie eine neue Verbindung zu MySQL in Navicat So erstellen Sie eine neue Verbindung zu MySQL in Navicat Apr 09, 2025 am 07:21 AM

Sie können eine neue MySQL -Verbindung in Navicat erstellen, indem Sie den Schritten folgen: Öffnen Sie die Anwendung und wählen Sie eine neue Verbindung (Strg N). Wählen Sie "MySQL" als Verbindungstyp. Geben Sie die Hostname/IP -Adresse, den Port, den Benutzernamen und das Passwort ein. (Optional) Konfigurieren Sie erweiterte Optionen. Speichern Sie die Verbindung und geben Sie den Verbindungsnamen ein.

So führen Sie SQL in Navicat aus So führen Sie SQL in Navicat aus Apr 08, 2025 pm 11:42 PM

Schritte zur Durchführung von SQL in Navicat: Verbindung zur Datenbank herstellen. Erstellen Sie ein SQL -Editorfenster. Schreiben Sie SQL -Abfragen oder Skripte. Klicken Sie auf die Schaltfläche Ausführen, um eine Abfrage oder ein Skript auszuführen. Zeigen Sie die Ergebnisse an (wenn die Abfrage ausgeführt wird).

See all articles