Einführung in gespeicherte ProzedurenWarum gespeicherte Prozeduren verwenden?MySQL Version 5.0 begann, gespeicherte Prozeduren zu unterstützen. Die meisten SQL-Anweisungen sind einzelne Anweisungen für eine oder mehrere Tabellen. Nicht alle Operationen sind so einfach. Oft sind für die Ausführung eines vollständigen Vorgangs mehrere Anweisungen erforderlich. Einfach ausgedrückt ist eine gespeicherte Prozedur eine Sammlung von einer oder mehreren MySQL-Anweisungen, die zur späteren Verwendung gespeichert werden. Stellen Sie es sich als eine Batchdatei vor. Ihre Rolle ist jedoch nicht auf die Stapelverarbeitung beschränkt.
Vorteile gespeicherter Prozeduren
Nachteile gespeicherter Prozeduren
Gespeicherte Prozeduren in MySQLErstellen und Aufrufen von ProzedurenErstellen Sie eine gespeicherte Prozedur. Der Code lautet wie folgt: -- Erstellen Sie eine gespeicherte Prozedur. create procedure mypro(in a int, in b int, out sum int) beginnen Summe = a+b; Ende; Die Ergebnisse sind wie folgt Sie können den Vorgang auch unter dem Knoten „Funktion“ im Navicat-Client anzeigen, wie unten gezeigt: Rufen Sie die gespeicherte Prozedur auf. Der Code lautet wie folgt: call mypro(1,2,@s);-- ruft die gespeicherte Prozedur auf select @s;-- zeigt die Ausgabeergebnisse der Prozedur an Ergebnisse der Operation Syntaxanalyse gespeicherter Prozeduren
Parameter gespeicherter Prozeduren
Gespeicherte Prozeduren können basierend auf Parametern in vier Kategorien unterteilt werden: 1). Ein Verfahren ohne Parameter; 2). Der Prozess hat nur Eingabeparameter; 3). Ein Prozess mit nur Ausgabeparametern; 4). Eine Prozedur, die Eingabe- und Ausgabeparameter enthält. VariableGespeicherte Prozeduren in MySQL ähneln Methoden in Java. In diesem Fall können Variablen auch in gespeicherten Prozeduren verwendet werden. Der Gültigkeitsbereich lokaler Variablen in Java ist die Methode, in der sich die Variable befindet, während der Gültigkeitsbereich lokaler Variablen in MySQL die gespeicherte Prozedur ist, in der sich die Variable befindet. Variablendefinition DECLARE Variablenname [, Variablenname ...] Datentyp [STANDARDwert];
Zum Beispiel: Deklarieren Sie den Namen varchar(20) als Standard „Jack“. VariablenzuweisungSET-Variablenname = Ausdruckswert [,Variablenname = Ausdruck ...] Verwenden Sie Variablen in der gespeicherten Prozedur. Der Code lautet wie folgt use schooldb;-- Benutze die Datenbank schooldb -- Erstelle eine Prozedur create procedure mypro1() beginnen Deklarationsname varchar (20); Setname = „Qiu Chuji“; Wählen Sie * aus Studenteninfo, wobei Studentenname = Name ist; Ende; -- Rufe die Prozedur call mypro1(); auf. Ergebnisse der Operation Flusssteuerungsanweisungenif-Bedingungsanweisung Die Definieren Sie eine gespeicherte Prozedur, geben Sie eine Ganzzahl ein und verwenden Sie eine if-Anweisung, um zu bestimmen, ob es sich um eine positive oder negative Zahl handelt. Der Code lautet wie folgt: -- Prozedur erstellen Prozedur erstellen mypro2(in num int) beginnen wenn Num<0, dann - Bedingung beginnt mit der Auswahl von „negativer Zahl“; sonstwenn Zahl=0 dann wählen Sie „weder positiv noch negativ“; anders wählen Sie „positive Zahl“; Ende wenn;-- Bedingung endet Ende; -- Rufe die Prozedur call mypro2(-1) auf; Ergebnisse der Operation Case-Bedingungsanweisung Definieren Sie eine gespeicherte Prozedur, geben Sie eine Ganzzahl ein und verwenden Sie die Case-Anweisung, um zu bestimmen, ob es sich um eine positive oder negative Zahl handelt. Der Code lautet wie folgt: -- Prozedur erstellen Prozedur erstellen mypro3(in num int) beginnen Fall – Bedingung beginnt, wenn Zahl < 0, dann wähle „negative Zahl“; wenn Num=0, dann wähle „weder positiv noch negativ“; andernfalls wählen Sie „positive Zahl“; Ende des Falls; -- Bedingung beendet Ende; -- Rufe die Prozedur call mypro3(1) auf; Ergebnisse der Operation Definieren Sie eine gespeicherte Prozedur, geben Sie eine Ganzzahl ein und verwenden Sie eine Case-Anweisung, um zu bestimmen, ob es 1 oder 2 ist. Der Code lautet wie folgt: -- Prozedur erstellen Prozedur erstellen mypro4(in num int) beginnen Fallnummer – Bedingung beginnt bei 1, dann wählen Sie „der Wert ist 1“; wenn 2, dann wählen Sie „der Wert ist 2“; andernfalls wählen Sie „weder 1 noch 2“; Ende des Falls; -- Bedingung beendet Ende; -- Rufe die Prozedur call mypro4(3) auf; Ergebnisse der Operation
While-Schleifenanweisung Die Verwendung der Definieren Sie eine gespeicherte Prozedur und verwenden Sie eine While-Schleife, um die kumulierte Summe von 1 bis 10 auszugeben. Der Code lautet wie folgt: -- Prozedur erstellen Prozedur erstellen mypro5(out sum int) beginnen Deklarieren Sie num int als Standard 0; setze Summe = 0; while num<10 do -- Schleife startet set num = num+1; Summe = Summe+Zahl festlegen; Ende während; -- Ende der Schleife Ende; -- Rufe die Prozedur call mypro5(@sum) auf; --Abfragevariablenwert select @sum; Ergebnisse der Operation repeat-Schleifenanweisung Die Verwendung der Definieren Sie eine gespeicherte Prozedur und verwenden Sie eine Wiederholungsschleife, um die kumulierte Summe von 1 bis 10 auszugeben. Der Code lautet wie folgt: -- Prozedur erstellen Prozedur erstellen mypro6(out sum int) beginnen Deklarieren Sie num int als Standard 0; setze Summe = 0; Wiederholen – Schleife startet, setze Num = Num+1; Summe = Summe+Zahl festlegen; bis num>=10 Ende der Wiederholung; -- Ende der Schleife; -- Rufe die Prozedur call mypro6(@sum) auf; --Abfragevariablenwert select @sum; Ergebnisse der Operation loop-AnweisungUm bestimmte Anweisungen wiederholt auszuführen, werden Schleifenanweisungen verwendet. Während des Ausführungsprozesses können Sie mit Hilfe von Die Definieren Sie eine gespeicherte Prozedur und verwenden Sie eine Schleife, um die kumulierte Summe von 1 bis 10 auszugeben. Der Code lautet wie folgt: -- Prozedur erstellen Prozedur erstellen mypro7(out sum int) beginnen Deklarieren Sie num int als Standard 0; setze Summe = 0; loop_sum:Schleife – Schleife startet, setze Num = Num+1; Summe = Summe+Zahl festlegen; wenn num>=10 dann verlasse loop_sum; Ende wenn; Ende der Schleife loop_sum; – Ende der Schleife end; -- Rufe die Prozedur call mypro7(@sum) auf; --Abfragevariablenwert select @sum; Ergebnisse der Operation
Verwaltung gespeicherter ProzedurenDie Verwaltung gespeicherter Prozeduren umfasst hauptsächlich: Anzeigen von Prozeduren, Anzeigen des Prozedurquellcodes und Löschen von Prozeduren. Eine relativ einfache Möglichkeit besteht darin, das Navicat-Client-Tool zur Verwaltung zu verwenden. Klicken Sie einfach mit der Maus, wie in der folgenden Abbildung gezeigt: Gespeicherte Prozeduren anzeigen VERFAHRENSSTATUS ANZEIGEN; Zeigt gespeicherte Prozeduren für eine bestimmte Datenbank an VERFAHREN-Status anzeigen, wobei db = „Schuldb“; Zeigt die gespeicherten Prozeduren eines bestimmten Schemas an und erfordert, dass die gespeicherten Prozeduren angezeigt werden, deren Namen "my" enthalten. VERFAHRENSSTATUS ANZEIGEN, bei dem der Name beispielsweise „%my%“ lautet; Den Quellcode der gespeicherten Prozedur „mypro1“ anzeigen PROZEDUR ZUM ERSTELLEN ANZEIGEN mypro1; Löschen Sie die gespeicherte Prozedur „mypro1“. VERFAHREN mypro1 löschen; ZusammenfassenDamit ist dieser Artikel zum Erstellen, Aufrufen und Verwalten von gespeicherten MySQL-Prozeduren abgeschlossen. Weitere Informationen zu gespeicherten MySQL-Prozeduren finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Eine kurze Diskussion über das Blockieren von CSS-Zusammenführungen und andere Auswirkungen
>>: Verwendung des Zielattributs des HTML-Tags a
Vorwort Derzeit ist das von meiner Firma verwende...
Inhaltsverzeichnis Benutzerdefinierte Vite-Plugin...
Das Jahr ist zu Ende und es gibt weniger Aufgaben...
Als leichte Open-Source-Datenbank wird MySQL häuf...
1. Die Rolle des Index In allgemeinen Anwendungss...
Inhaltsverzeichnis Vorwort: 1. Über die Datenmigr...
netem und tc: netem ist ein Netzwerksimulationsmo...
Vorwort Bevor wir mit der Erklärung des Prinzips ...
MySQL5.6 So erstellen Sie SSL-Dateien Offizielle ...
Inhaltsverzeichnis 1. Verwenden Sie den Befehl „r...
Verwenden Sie HTML, CSS und JavaScript, um einen ...
Rendern Wenn Sie den im Bild unten gezeigten Effe...
Jeder, der HTML studiert oder verwendet hat, soll...
Ich verwende einen Platzhalter in einer Texteinga...
Vorwort Verwenden Sie nginx zum Lastenausgleich. ...