Dieser Artikel erläutert anhand von Beispielen die Konzepte, Prinzipien und allgemeinen Verwendungszwecke gespeicherter MySQL-Prozeduren. Teilen Sie uns die Einzelheiten zu Ihrer Information mit: 1. Das Konzept der gespeicherten Prozedur
Prozedur: kapselt mehrere Anweisungen. Wenn diese gekapselten Körper aufgerufen werden, führen sie Funktionen aus: eine „Prozedur“ mit einem Rückgabewert In MySQL: Wir kapseln mehrere SQL-Anweisungen und geben ihnen einen Namen - Prozedur. Wir speichern diese Prozedur in der Datenbank - gespeicherte Prozedur 2. Erstellen Sie eine gespeicherte Prozedur Prozedur erstellen Prozedurname() beginnen //--SQL-Anweisung Ende$ 3. Vorhandene gespeicherte Prozeduren anzeigen Vorgangsstatus anzeigen 4. Löschen Sie die gespeicherte Prozedur Prozedur Prozedurname löschen; 5. Aufrufen einer gespeicherten Prozedur rufe Prozedurname() auf; 6. Die erste gespeicherte Prozedur Hinweis: Ich habe hier die MySQL-Endkennung in $ geändert. Wenn Sie wissen möchten, wie Sie sie auf $ setzen, lesen Sie bitte meinen anderen Artikel: MySQL-Trigger. Prozedur p1() erstellen beginnen wähle 2+3; Ende$ Anruf: rufe p1() auf; Ergebnisse anzeigen: 7. Einführung von Variablen Gespeicherte Prozeduren sind programmierbar, d. h. Sie können Variablen, Ausdrücke und Kontrollstrukturen verwenden, um komplexe Funktionen auszuführen. In einer gespeicherten Prozedur deklarieren Sie Variablen mit declare: Variablennamen deklarieren Variablentyp [Standard Standardwert] verwenden: erstelle Prozedur p2() beginnen Deklariere das Alter als Standardwert 18; Deklarieren Sie die Höhe als Int-Standardwert 180. select concat('Alter:',Alter,'Größe:',Größe); Ende$ Ergebnisse anzeigen: 8. Ausdrücke einführen In einer gespeicherten Prozedur können Variablen für gültige Operationen in SQL-Anweisungen verwendet werden, z. B. +-*/. Das Format der Variablenzuweisung ist: verwenden: Prozedur p3() erstellen beginnen Deklariere das Alter als Int-Standard: 18; Alter festlegen: = Alter + 20; select concat('Alter in 20 Jahren:', Alter); Ende$ Ergebnisse anzeigen: 9. Auswahlkontrollstruktur einführen Format: wenn Bedingung dann Stellungnahme sonstwenn Stellungnahme anders Stellungnahme Ende wenn; verwenden: Prozedur p4() erstellen beginnen Deklariere das Alter als Int-Standard: 18; wenn Alter >= 18 dann Wählen Sie „Alter“; anders Wählen Sie „Minderjährige“; Ende wenn; Ende$ Ergebnisse anzeigen: 10. Übergeben von Parametern an gespeicherte Prozeduren In den Klammern der Stored Procedure-Definition können Sie Parameter deklarieren. Die Syntax lautet: verwenden: Erstellen Sie die Prozedur p5 (Breite int, Höhe int). beginnen select concat('Ihr Bereich ist:',Breite * Höhe) als Bereich; wenn Breite > Höhe dann wählen Sie „Sie sind dicker“; sonstwenn Breite < Höhe dann wählen Sie „Sie sind dünner“; anders wählen Sie „Sie vergleichen“; Ende wenn; Ende$ Ergebnisse anzeigen: 11. Verwenden Sie die While-Schleifenstruktur Anforderung: Addiere von 1 bis 100 verwenden: Prozedur p6() erstellen beginnen Deklarieren Sie den Gesamtint-Standardwert 0. Deklarieren Sie num int als Standard 0; während num <= 100 Gesamtsumme festlegen := Gesamtsumme + Zahl; setze Num := Num + 1; Ende während; Gesamtsumme auswählen; Ende$ Ergebnisse anzeigen: 12. Eingabe- und Ausgabetypen von gespeicherten Prozedurparametern Es gibt drei Haupttypen von Anforderungen: in, out und inout: von 1 bis N (1) in Typ, in ist der Eingabezeilenparameter, der unsere Eingabe akzeptieren kann Prozedur p7 erstellen (in n int) beginnen Deklarieren Sie den Gesamtint-Standardwert 0. Deklarieren Sie num int als Standard 0; während num <= n tun Gesamtsumme festlegen := Gesamtsumme + Zahl; setze Num := Num + 1; Ende während; Gesamtsumme auswählen; Ende$ Anruf: rufe p7(100) auf; Ausgabe: (2) Parameter des Typs out Erstellen Sie die Prozedur p8 (in n int, out total int). beginnen Deklarieren Sie num int als Standard 0; Gesamtsumme festlegen := 0; während num <= n tun Gesamtsumme festlegen := Gesamtsumme + Zahl; setze Num := Num + 1; Ende während; Ende$ Anruf: call p8(100,@total); --100 ist ein Eingabeparameter und @total ist eine Ausgabevariable select @total; --output @total variable Ausgabe: (3) Inout-Typparameter Prozedur p9 erstellen (inout age int) beginnen Alter festlegen := Alter+20; Ende$ Anruf: setze @age = 18; --Setze die Variable @age auf 18 call p9(@age); --Rufen Sie die gespeicherte Prozedur p9 auf, die Variable @age ist der eigentliche Parameter select @age; --Zeigen Sie die Variable @age an Ausgabe: Der tatsächliche Parameter einer Variable vom Typ Inout ist ebenfalls ein Variablenname. Diese Variable dient in der gespeicherten Prozedur sowohl als Eingabevariable als auch als Ausgabevariable. 13. Verwendung der Fallstruktur verwenden: Prozedur p10() erstellen beginnen Deklarieren Sie pos int als Standard 0; setze Position := floor(5*rand()); Fallpos wenn 1, dann wähle „immer noch fliegend“; wenn 2, dann wähle „Ins Meer fallen“; wenn 3, dann wähle „an Land fallen“; andernfalls wählen Sie „Ich weiß nicht wo“; Ende des Falls; Ende$ Ausgabe: 14. Wiederholungsschleifenstruktur Format: [begin_label:] WIEDERHOLEN Anweisungsliste BIS Suchbedingung ENDE WIEDERHOLUNG [end_label] Anforderung: Addiere von 1 bis 100 Prozedur p11() erstellen beginnen Deklarieren Sie den Gesamtint-Standardwert 0. Deklarieren Sie num int als Standard 0; r:wiederholen Gesamtsumme festlegen:= Gesamtsumme + Zahl; setze Num:=Num + 1; bis Zahl > 100 Ende der Wiederholung r; Gesamtsumme auswählen; Ende$ Ausgabe: Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen auf dieser Site ansehen: „Kenntnisse zu gespeicherten MySQL-Prozeduren“, „Zusammenfassung der allgemeinen MySQL-Funktionen“, „Kenntnisse zu MySQL-Protokollvorgängen“, „Zusammenfassung der Kenntnisse zu MySQL-Transaktionsvorgängen“ und „Zusammenfassung der Kenntnisse zu MySQL-Datenbanksperren“. Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist. Das könnte Sie auch interessieren:
|
<<: Entwurf und Implementierung einer kaskadierenden Dropdown-Box in Vue
>>: So aktivieren Sie die JMX-Überwachung über Tomcat
Grundlegende Konzepte Absolute Positionierung: Ei...
Inhaltsverzeichnis Als globale Variable Variables...
Binäre MySQL-Installationsmethode Laden Sie mysql...
Inhaltsverzeichnis 1. Was ist eine doppelt verknü...
sftp ist die Abkürzung für Secure File Transfer P...
Inhaltsverzeichnis Vorsichtsmaßnahmen Notwendige ...
Vorwort Für das Projekt ist ein kreisförmiges Men...
Vorwort Bei der Arbeit an einem Hochverfügbarkeit...
Inhaltsverzeichnis Vorwort 1.ignorieren einfügen ...
Einführung in DNMP DNMP (Docker + Nginx + MySQL +...
Deinstallieren von MySQL 1. Deinstallieren Sie in...
Vorwort Das langsame Abfrageprotokoll ist eine se...
1: MySql herunterladen Offizielle Download-Adress...
Verwenden Sie hauptsächlich die Eigenschaften „pr...
Inhaltsverzeichnis JavaScript-Objekte 1. Definiti...