Heim Datenbank MySQL-Tutorial Erstellung einer gespeicherten MySQL-Prozedur

Erstellung einer gespeicherten MySQL-Prozedur

May 12, 2023 am 10:55 AM

Gespeicherte MySQL-Prozeduren sind eine Methode zum Speichern einer Reihe von SQL-Anweisungen in einer Datenbank, die bei Bedarf aufgerufen werden können, um diese Anweisungen auszuführen. Die Erstellung gespeicherter MySQL-Prozeduren erfordert einige Grundkenntnisse der SQL-Syntax und einige Programmierkonzepte.

In diesem Artikel erfahren Sie, wie Sie eine gespeicherte MySQL-Prozedur erstellen und deren grundlegende Syntax und den Erstellungsprozess anhand von Beispielen veranschaulichen.

  1. Grundlegende Syntax gespeicherter Prozeduren

Die grundlegende Syntax, die von gespeicherten MySQL-Prozeduren verwendet wird, lautet wie folgt:

CREATE PROCEDURE procedure_name()
BEGIN
-- SQL statements
END;
Nach dem Login kopieren
Nach dem Login kopieren

Unter diesen ist CREATE PROCEDURE das Schlüsselwort der gespeicherten MySQL-Prozedur und procedure_name der Name der gespeicherten Prozedur. Der Codeblock zwischen BEGIN und END ist der SQL-Code, der von der gespeicherten Prozedur ausgeführt wird.

Das Folgende ist ein Beispiel für eine einfache gespeicherte Prozedur, die zum Abfragen von Studenteninformationen verwendet wird:

CREATE PROCEDURE GetStudent()
BEGIN
SELECT * FROM Student;
END;
Nach dem Login kopieren

Die gespeicherte Prozedur heißt GetStudent und ihre Funktion besteht darin, alle Daten in der Student-Datentabelle zurückzugeben.

  1. Parameter gespeicherter Prozeduren

Gespeicherte MySQL-Prozeduren können Eingabeparameter und Ausgabeparameter akzeptieren. Eingabeparameter werden verwendet, um Daten an die gespeicherte Prozedur zu übergeben, und Ausgabeparameter werden verwendet, um Daten von der gespeicherten Prozedur zurückzugeben. Unter diesen müssen sowohl Eingabeparameter als auch Ausgabeparameter angegeben werden, wenn die gespeicherte Prozedur erstellt wird.

Hier ist ein Beispiel einer gespeicherten Prozedur mit Eingabeparametern:

CREATE PROCEDURE GetStudentByGrade(IN grade INT)
BEGIN
SELECT * FROM Student WHERE Grade = grade;
END;
Nach dem Login kopieren

Die gespeicherte Prozedur heißt GetStudentByGrade und hat einen Eingabeparameter grade vom Typ INT. Wenn diese gespeicherte Prozedur aufgerufen wird, gibt sie alle Schülerdatensätze zurück, deren Note mit der Note übereinstimmt.

  1. Variablen gespeicherter Prozeduren

Gespeicherte MySQL-Prozeduren können auch Variablen zum Speichern von Daten verwenden. Diese Variablen können im Codeblock der gespeicherten Prozedur deklariert und verwendet werden.

Hier ist ein Beispiel einer gespeicherten Prozedur mit Variablen:

CREATE PROCEDURE GetStudentByClassName(IN class_name VARCHAR(50), OUT student_count INT)
BEGIN
DECLARE class_id INT;
SELECT ClassID INTO class_id FROM Class WHERE ClassName = class_name;
SELECT COUNT(*) INTO student_count FROM Student WHERE ClassID = class_id;
END;
Nach dem Login kopieren

Die gespeicherte Prozedur heißt GetStudentByClassName und hat zwei Parameter: einen Eingabeparameter class_name und einen Ausgabeparameter student_count. Es deklariert zunächst eine Variable class_id und ruft dann den Wert der Variablen über eine Abfrage ab. Schließlich berechnet es die Anzahl der Schüler, die der Klasse über die Abfrage zugeordnet sind, und speichert sie in der Variablen student_count.

  1. Steueranweisungen für gespeicherte Prozeduren

Gespeicherte MySQL-Prozeduren können Steueranweisungen verwenden, um die Ausführung von Codeblöcken zu steuern. Zu den gängigen Steueranweisungen für gespeicherte MySQL-Prozeduren gehören IF, CASE, WHILE und FOR.

Hier ist ein Beispiel für eine gespeicherte Prozedur, die eine IF-Steueranweisung verwendet:

CREATE PROCEDURE GetStudentByID(IN student_id INT)
BEGIN
DECLARE student_name VARCHAR(50);
IF student_id <= 0 THEN
SET student_name = 'Invalid ID';
ELSE
SELECT StudentName INTO student_name FROM Student WHERE StudentID = student_id;
END IF;
SELECT student_name;
END;
Nach dem Login kopieren

Die gespeicherte Prozedur heißt GetStudentByID und hat einen Eingabeparameter student_id. Es deklariert zunächst eine Variable student_name und überprüft dann mithilfe einer IF-Steueranweisung, ob die eingegebene Studenten-ID gültig ist. Bei Ungültigkeit wird „Ungültige ID“ zurückgegeben; bei Gültigkeit wird die Datenbank abgefragt und der gefundene Schülername in der Variablen student_name gespeichert.

  1. Erstellung und Verwendung gespeicherter Prozeduren

Das Erstellen gespeicherter Prozeduren mit MySQL kann über die MySQL-Befehlszeile oder MySQL Workbench erfolgen.

Unter der MySQL-Befehlszeile können Sie den folgenden Befehl verwenden, um eine gespeicherte Prozedur zu erstellen:

CREATE PROCEDURE procedure_name()
BEGIN
-- SQL statements
END;
Nach dem Login kopieren
Nach dem Login kopieren

Dann können Sie den folgenden Befehl verwenden, um die gespeicherte Prozedur aufzurufen:

CALL procedure_name();
Nach dem Login kopieren
Nach dem Login kopieren

Unter MySQL Workbench können Sie die folgenden Schritte ausführen Erstellen Sie eine gespeicherte Prozedur:

  1. Wählen Sie links im Seitenbereich die Datenbank aus, in der Sie die gespeicherte Prozedur erstellen möchten.
  2. Klicken Sie auf die Registerkarte „Gespeicherte Prozeduren“.
  3. Klicken Sie in der Liste „Gespeicherte Prozedur“ auf „Neue gespeicherte Prozedur“.
  4. Schreiben Sie den SQL-Code der gespeicherten Prozedur in das Anweisungsfeld „CREATE PROCEDURE“.
  5. Klicken Sie auf die Schaltfläche „Übernehmen“, um die gespeicherte Prozedur zu erstellen.

Nachdem Sie die gespeicherte Prozedur erstellt haben, können Sie den folgenden Befehl verwenden, um die gespeicherte Prozedur unter der MySQL-Befehlszeile aufzurufen:

CALL procedure_name();
Nach dem Login kopieren
Nach dem Login kopieren

Unter MySQL Workbench können Sie die folgenden Schritte verwenden, um die gespeicherte Prozedur aufzurufen:

  1. Wählen Sie die aus Gespeicherte Prozedur, die im linken Bereich der Prozessdatenbank aufgerufen werden soll.
  2. Klicken Sie auf die Registerkarte „Gespeicherte Prozeduren“.
  3. Suchen Sie die aufzurufende gespeicherte Prozedur in der Liste „Gespeicherte Prozedur“.
  4. Geben Sie die Parameter der gespeicherten Prozedur (falls vorhanden) in das Anweisungsfeld „CALL“ ein.
  5. Klicken Sie auf die Schaltfläche „AUFRUFEN“, um die gespeicherte Prozedur aufzurufen.
  6. Fazit

Gespeicherte MySQL-Prozeduren sind eine Möglichkeit, SQL-Code in einer Datenbank zu speichern. Durch die Verwendung gespeicherter Prozeduren können komplexe SQL-Abfragen oder häufig verwendete SQL-Codeblöcke zur späteren Wiederverwendung oder zur Verbesserung der Abfrageeffizienz in der Datenbank gespeichert werden. In diesem Artikel werden die grundlegende Syntax gespeicherter MySQL-Prozeduren, die Verwendung von Parametern, Variablen und Steueranweisungen sowie das Erstellen und Aufrufen gespeicherter Prozeduren vorgestellt. Wir hoffen, dass dieser Artikel Ihnen helfen kann, gespeicherte MySQL-Prozeduren zu verstehen und sie in der Praxis zu verwenden, um die Effizienz von Datenbankoperationen zu verbessern.

Das obige ist der detaillierte Inhalt vonErstellung einer gespeicherten MySQL-Prozedur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
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)

Erläutern Sie InnoDB Volltext-Suchfunktionen. Erläutern Sie InnoDB Volltext-Suchfunktionen. Apr 02, 2025 pm 06:09 PM

Die Volltext-Suchfunktionen von InnoDB sind sehr leistungsfähig, was die Effizienz der Datenbankabfrage und die Fähigkeit, große Mengen von Textdaten zu verarbeiten, erheblich verbessern kann. 1) InnoDB implementiert die Volltext-Suche durch invertierte Indexierung und unterstützt grundlegende und erweiterte Suchabfragen. 2) Verwenden Sie die Übereinstimmung und gegen Schlüsselwörter, um den Booleschen Modus und die Phrasesuche zu unterstützen. 3) Die Optimierungsmethoden umfassen die Verwendung der Word -Segmentierungstechnologie, die regelmäßige Wiederaufbauung von Indizes und die Anpassung der Cache -Größe, um die Leistung und Genauigkeit zu verbessern.

Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung? Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung? Mar 19, 2025 pm 03:51 PM

In dem Artikel werden mithilfe der Änderungstabelle von MySQL Tabellen, einschließlich Hinzufügen/Löschen von Spalten, Umbenennung von Tabellen/Spalten und Ändern der Spaltendatentypen, erläutert.

Wie konfiguriere ich die SSL/TLS -Verschlüsselung für MySQL -Verbindungen? Wie konfiguriere ich die SSL/TLS -Verschlüsselung für MySQL -Verbindungen? Mar 18, 2025 pm 12:01 PM

In Artikel werden die Konfiguration der SSL/TLS -Verschlüsselung für MySQL, einschließlich der Erzeugung und Überprüfung von Zertifikaten, erläutert. Das Hauptproblem ist die Verwendung der Sicherheitsauswirkungen von selbstsignierten Zertifikaten. [Charakterzahl: 159]

Wann könnte ein vollständiger Tabellen -Scan schneller sein als einen Index in MySQL? Wann könnte ein vollständiger Tabellen -Scan schneller sein als einen Index in MySQL? Apr 09, 2025 am 12:05 AM

Die volle Tabellenscannung kann in MySQL schneller sein als die Verwendung von Indizes. Zu den spezifischen Fällen gehören: 1) das Datenvolumen ist gering; 2) Wenn die Abfrage eine große Datenmenge zurückgibt; 3) wenn die Indexspalte nicht sehr selektiv ist; 4) Wenn die komplexe Abfrage. Durch Analyse von Abfrageplänen, Optimierung von Indizes, Vermeidung von Überindex und regelmäßiger Wartung von Tabellen können Sie in praktischen Anwendungen die besten Auswahlmöglichkeiten treffen.

Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)? Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)? Mar 21, 2025 pm 06:28 PM

In Artikel werden beliebte MySQL -GUI -Tools wie MySQL Workbench und PhpMyAdmin beschrieben, die ihre Funktionen und ihre Eignung für Anfänger und fortgeschrittene Benutzer vergleichen. [159 Charaktere]

Wie behandeln Sie große Datensätze in MySQL? Wie behandeln Sie große Datensätze in MySQL? Mar 21, 2025 pm 12:15 PM

In Artikel werden Strategien zum Umgang mit großen Datensätzen in MySQL erörtert, einschließlich Partitionierung, Sharding, Indexierung und Abfrageoptimierung.

Kann ich MySQL unter Windows 7 installieren? Kann ich MySQL unter Windows 7 installieren? Apr 08, 2025 pm 03:21 PM

Ja, MySQL kann unter Windows 7 installiert werden, und obwohl Microsoft Windows 7 nicht mehr unterstützt hat, ist MySQL dennoch kompatibel damit. Während des Installationsprozesses sollten jedoch folgende Punkte festgestellt werden: Laden Sie das MySQL -Installationsprogramm für Windows herunter. Wählen Sie die entsprechende Version von MySQL (Community oder Enterprise) aus. Wählen Sie während des Installationsprozesses das entsprechende Installationsverzeichnis und das Zeichen fest. Stellen Sie das Stammbenutzerkennwort ein und behalten Sie es ordnungsgemäß. Stellen Sie zum Testen eine Verbindung zur Datenbank her. Beachten Sie die Kompatibilitäts- und Sicherheitsprobleme unter Windows 7, und es wird empfohlen, auf ein unterstütztes Betriebssystem zu aktualisieren.

Differenz zwischen Clustered Index und nicht klusterer Index (Sekundärindex) in InnoDB. Differenz zwischen Clustered Index und nicht klusterer Index (Sekundärindex) in InnoDB. Apr 02, 2025 pm 06:25 PM

Der Unterschied zwischen Clustered Index und nicht klusterer Index ist: 1. Clustered Index speichert Datenzeilen in der Indexstruktur, die für die Abfrage nach Primärschlüssel und Reichweite geeignet ist. 2. Der nicht klusterierte Index speichert Indexschlüsselwerte und -zeiger auf Datenzeilen und ist für nicht-primäre Schlüsselspaltenabfragen geeignet.

See all articles