Heim >Datenbank >MySQL-Tutorial >So schreiben Sie eine gespeicherte SQL-Prozedur
Die Schreibmethode ist „CREATE PROCEDURE Prozessname ([Prozessparameter]) Prozesskörper [Prozessparameter] Format [IN|OUT|INOUT] Parameternamenstyp“. Beim Prozedurnamen sollte vermieden werden, dass derselbe Name wie bei der integrierten Funktion gewählt wird, da andernfalls ein Fehler auftritt. Der Prozedurhauptteil beginnt mit BEGIN und endet mit END.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, MySQL-Version 5.8, Dell G3-Computer.
(Empfohlenes Tutorial: MySQL-Video-Tutorial)
Die gespeicherte MySQL-Prozedur ist eine Sammlung von SQL-Anweisungen. Manchmal benötigen wir möglicherweise eine große Reihe von SQL-Anweisungen oder wir müssen beim Schreiben einige Variablen festlegen SQL-Anweisungen wert, zu diesem Zeitpunkt ist es für uns unbedingt erforderlich, eine gespeicherte Prozedur zu schreiben.
Gespeicherte Prozeduren zu schreiben ist keine einfache Sache, aber die Verwendung gespeicherter Prozeduren kann Vorgänge vereinfachen und redundante Arbeitsschritte reduzieren. Gleichzeitig können dadurch auch Fehler während des Betriebs reduziert und die Effizienz verbessert werden möglichst prozessorientiert.
Im Folgenden wird hauptsächlich das Erstellen einer gespeicherten Prozedur vorgestellt.
Sie können die CREATE PROCEDURE-Anweisung verwenden, um eine gespeicherte Prozedur zu erstellen. Das Syntaxformat lautet wie folgt:
CREATE PROCEDURE <过程名> ( [过程参数[,…] ] ) <过程体> [过程参数[,…] ] 格式 [ IN | OUT | INOUT ] <参数名> <类型>
Die Syntaxbeschreibung lautet wie folgt:
1) Prozedurname
Der Name der gespeicherten Prozedur, die wird standardmäßig in der aktuellen Datenbank erstellt. Wenn Sie eine gespeicherte Prozedur in einer bestimmten Datenbank erstellen müssen, stellen Sie dem Namen den Namen der Datenbank voran, db_name.sp_name.
Es ist zu beachten, dass beim Namen vermieden werden sollte, denselben Namen wie die in MySQL integrierte Funktion zu wählen, da sonst ein Fehler auftritt.
2) Prozessparameter
speichert die Parameterliste des Prozesses. Dabei ist 9d0a4e3e672631d8956928b9c4d210e0 der Parametername und 62c7bca83627d50881591b7faa9f6dc2 der Typ des Parameters (kann jeder gültige MySQL-Datentyp sein). Wenn mehrere Parameter vorhanden sind, trennen Sie diese in der Parameterliste durch Kommas. Eine gespeicherte Prozedur kann keine Parameter haben (in diesem Fall muss nach dem Namen der gespeicherten Prozedur noch ein Klammerpaar hinzugefügt werden), oder sie kann einen oder mehrere Parameter haben.
Gespeicherte MySQL-Prozeduren unterstützen drei Arten von Parametern, nämlich Eingabeparameter, Ausgabeparameter und Eingabe-/Ausgabeparameter, die jeweils durch die drei Schlüsselwörter IN, OUT und INOUT identifiziert werden. Darunter können Eingabeparameter an eine gespeicherte Prozedur übergeben werden, Ausgabeparameter werden verwendet, wenn die gespeicherte Prozedur ein Operationsergebnis zurückgeben muss, und Eingabe-/Ausgabeparameter können sowohl als Eingabeparameter als auch als Ausgabeparameter dienen.
Es ist zu beachten, dass der Parametername nicht mit dem Spaltennamen der Datentabelle identisch sein sollte. Andernfalls wird der Parametername von der SQL-Anweisung der gespeicherten Prozedur als Spaltenname behandelt, obwohl keine Fehlermeldung zurückgegeben wird , was zu unvorhersehbaren Ergebnissen führt.
3) Prozedurhauptteil
Der Hauptteil der gespeicherten Prozedur, auch gespeicherter Prozedurhauptteil genannt, enthält die SQL-Anweisungen, die beim Aufruf der Prozedur ausgeführt werden müssen. Dieser Abschnitt beginnt mit dem Schlüsselwort BEGIN und endet mit dem Schlüsselwort END. Wenn der Hauptteil der gespeicherten Prozedur nur eine SQL-Anweisung enthält, kann das BEGIN-END-Flag weggelassen werden.
Beispiel:
Erstellen Sie eine gespeicherte Prozedur mit dem Namen ShowStuScore. Die Funktion der gespeicherten Prozedur besteht darin, Informationen zur Schülernote aus der Tabelle mit den Noteninformationen der Schüler abzufragen. Das Ergebnis zeigt, dass die gespeicherte Prozedur ShowStuScore erfolgreich erstellt wurde.
Weitere Kenntnisse zum Thema Programmierung finden Sie unter:
Einführung in die ProgrammierungDas obige ist der detaillierte Inhalt vonSo schreiben Sie eine gespeicherte SQL-Prozedur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!