Heim Datenbank MySQL-Tutorial Was ist eine gespeicherte Prozedur in MySQL?

Was ist eine gespeicherte Prozedur in MySQL?

Jun 11, 2021 pm 02:13 PM
mysql 存储过程

In MySQL ist eine gespeicherte Prozedur eine Reihe von SQL-Anweisungen zum Ausführen einer bestimmten Funktion. Der Zweck der Verwendung gespeicherter Prozeduren besteht darin, allgemeine oder komplexe Arbeiten mit SQL-Anweisungen vorab zu schreiben und sie unter einem angegebenen Namen zu speichern. Diese Prozedur wird kompiliert und optimiert und auf dem Datenbankserver gespeichert, daher wird sie als gespeicherte Prozedur bezeichnet.

Was ist eine gespeicherte Prozedur in MySQL?

Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.

Stored Procedure ist ein Datenbankobjekt, das komplexe Programme in der Datenbank speichert, damit sie von externen Programmen aufgerufen werden können.

Eine gespeicherte Prozedur ist eine Reihe von SQL-Anweisungen, die dazu dienen, eine bestimmte Funktion auszuführen. Der Zweck der Verwendung gespeicherter Prozeduren besteht darin, allgemeine oder komplexe Arbeiten mit SQL-Anweisungen vorab zu schreiben und sie unter einem angegebenen Namen zu speichern. Diese Prozedur wird kompiliert und optimiert und auf dem Datenbankserver gespeichert, daher wird sie als gespeicherte Prozedur bezeichnet. Wenn die Datenbank in Zukunft denselben Dienst wie die definierte gespeicherte Prozedur bereitstellen muss, müssen Sie nur „CALL Stored Procedure Name“ aufrufen, um ihn automatisch abzuschließen.

SQL-Anweisungen, die häufig zum Betrieb von Datenbanken verwendet werden, müssen zuerst kompiliert und dann ausgeführt werden. Gespeicherte Prozeduren verfolgen einen anderen Ansatz zum Ausführen von SQL-Anweisungen.

Eine gespeicherte Prozedur ist eine programmierbare Funktion, die in der Datenbank erstellt und gespeichert wird. Sie besteht im Allgemeinen aus SQL-Anweisungen und einigen speziellen Kontrollstrukturen. Gespeicherte Prozeduren eignen sich besonders dann, wenn Sie dieselbe spezifische Funktion auf verschiedenen Anwendungen oder Plattformen ausführen möchten.

MySQL 5.0-Version unterstützte zuvor keine gespeicherten Prozeduren, was die Anwendung von MySQL stark einschränkte. MySQL unterstützt gespeicherte Prozeduren seit Version 5.0, was nicht nur die Verarbeitungsgeschwindigkeit der Datenbank verbessert, sondern auch die Flexibilität der Datenbankprogrammierung verbessert. Gespeicherte Prozeduren können zum Konvertieren von Daten und zur Datenmigration verwendet werden , und Produktion. Berichte ähneln Programmiersprachen. Nach erfolgreicher Ausführung können sie jederzeit aufgerufen werden, um bestimmte funktionale Vorgänge abzuschließen.

Die Verwendung gespeicherter Prozeduren kann nicht nur die Effizienz des Datenbankzugriffs verbessern, sondern auch die Sicherheit der Datenbanknutzung verbessern.

Für den Aufrufer kapselt die gespeicherte Prozedur die SQL-Anweisung, und der Aufrufer muss den spezifischen Implementierungsprozess der logischen Funktion nicht berücksichtigen. Es ist nur ein einfacher Aufruf und kann aus Programmiersprachen wie Java und C# aufgerufen werden.

Erstellen Sie eine gespeicherte Prozedur Sie können die CREATE PROCEDURE-Anweisung verwenden, um eine gespeicherte Prozedur zu erstellen.

Das Syntaxformat lautet wie folgt:

CREATE PROCEDURE <过程名> ( [过程参数[,…] ] ) <过程体>
Nach dem Login kopieren
[Prozedurparameter [,…] ] Das Format

[ IN | OUT | INOUT ] <参数名> <类型>
Nach dem Login kopieren

Die Syntaxbeschreibung lautet wie folgt:

1) Prozedurname

Der Name der gespeicherten Prozedur, die standardmäßig in der aktuellen Datenbank erstellt wird. 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 der Parametername und 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. Die Eingabe-SQL-Anweisung und der Ausführungsprozess sind wie folgt.

mysql> DELIMITER //
mysql> CREATE PROCEDURE ShowStuScore()
    -> BEGIN
    -> SELECT * FROM tb_students_score;
    -> END //
Query OK, 0 rows affected (0.09 sec)
Nach dem Login kopieren

Die Ergebnisse zeigen, dass die gespeicherte Prozedur ShowStuScore erfolgreich erstellt wurde.

Gespeicherte Prozeduren löschenNachdem eine gespeicherte Prozedur erstellt wurde, wird sie auf dem Datenbankserver gespeichert, bis sie gelöscht wird. Wenn in der MySQL-Datenbank eine veraltete gespeicherte Prozedur vorhanden ist, müssen wir sie aus der Datenbank löschen.

Die DROP PROCEDURE-Anweisung wird in MySQL verwendet, um vorhandene gespeicherte Prozeduren in der Datenbank zu löschen. Das Syntaxformat lautet wie folgt:

DROP PROCEDURE [ IF EXISTS ] <过程名>
Nach dem Login kopieren

Die Syntaxbeschreibung lautet wie folgt:

    Prozedurname: Geben Sie den Namen der gespeicherten Prozedur an, die gelöscht werden soll.
  • IF EXISTS:指定这个关键字,用于防止因删除不存在的存储过程而引发的错误。

注意:存储过程名称后面没有参数列表,也没有括号,在删除之前,必须确认该存储过程没有任何依赖关系,否则会导致其他与之关联的存储过程无法运行。

实例

下面删除存储过程 ShowStuScore,SQL 语句和运行结果如下:

mysql> DROP PROCEDURE ShowStuScore;
Query OK, 0 rows affected (0.08 sec)
Nach dem Login kopieren

删除后,可以通过查询 information_schema 数据库下的 routines 表来确认上面的删除是否成功。SQL 语句和运行结果如下:

mysql> SELECT * FROM information_schema.routines WHERE routine_name=&#39;ShowStuScore&#39;;
Empty set (0.03 sec)
Nach dem Login kopieren

结果显示,没有查询出任何记录,说明存储过程 ShowStuScore 已经被删除了。

(推荐教程:mysql视频教程

Das obige ist der detaillierte Inhalt vonWas ist eine gespeicherte Prozedur in MySQL?. 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)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate 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: 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 man phpmyadmin öffnet Wie man phpmyadmin öffnet Apr 10, 2025 pm 10:51 PM

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

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.

MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

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.

Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

So verwenden Sie ein einzelnes Gewinde -Redis So verwenden Sie ein einzelnes Gewinde -Redis Apr 10, 2025 pm 07:12 PM

Redis verwendet eine einzelne Gewindearchitektur, um hohe Leistung, Einfachheit und Konsistenz zu bieten. Es wird E/A-Multiplexing, Ereignisschleifen, nicht blockierende E/A und gemeinsame Speicher verwendet, um die Parallelität zu verbessern, jedoch mit Einschränkungen von Gleichzeitbeschränkungen, einem einzelnen Ausfallpunkt und ungeeigneter Schreib-intensiver Workloads.

So wiederherstellen Sie Daten nach dem Löschen von SQL Zeilen So wiederherstellen Sie Daten nach dem Löschen von SQL Zeilen Apr 09, 2025 pm 12:21 PM

Das Wiederherstellen von gelöschten Zeilen direkt aus der Datenbank ist normalerweise unmöglich, es sei denn, es gibt einen Backup- oder Transaktions -Rollback -Mechanismus. Schlüsselpunkt: Transaktionsrollback: Führen Sie einen Rollback aus, bevor die Transaktion Daten wiederherstellt. Sicherung: Regelmäßige Sicherung der Datenbank kann verwendet werden, um Daten schnell wiederherzustellen. Datenbank-Snapshot: Sie können eine schreibgeschützte Kopie der Datenbank erstellen und die Daten wiederherstellen, nachdem die Daten versehentlich gelöscht wurden. Verwenden Sie eine Löschanweisung mit Vorsicht: Überprüfen Sie die Bedingungen sorgfältig, um das Verhandlich von Daten zu vermeiden. Verwenden Sie die WHERE -Klausel: Geben Sie die zu löschenden Daten explizit an. Verwenden Sie die Testumgebung: Testen Sie, bevor Sie einen Löschvorgang ausführen.

See all articles