Heim >Datenbank >MySQL-Tutorial >Was ist eine gespeicherte MySQL-Prozedur?
Die gespeicherte Prozedur in MySQL bezieht sich auf eine Sammlung von SQL-Anweisungen, die in der Datenbank gespeichert sind. Wenn die gespeicherte Prozedur erstellt wird und die erforderlichen Parameter zur Laufzeit bereitgestellt werden, kann die gespeicherte Prozedur auf diese Weise verwendet werden Durch den Code angegebene Parameterausführung und Rückgabewert
bietet die Möglichkeit, gespeicherte Prozeduren in MySQL zu erstellen. Gespeicherte Prozeduren sind eine leistungsstarke Funktion in MySQL und anderen Datenbankverwaltungssystemen. Als nächstes werden wir in diesem Artikel die gespeicherten Prozeduren in MySQL im Detail vorstellen, die als Referenz dienen und ich hoffe, dass sie Ihnen hilfreich sein werden.
[Empfohlener Kurs: MySQL-Tutorial]
Gespeicherte Prozedur:
Eine gespeicherte Prozedur bezieht sich auf eine Sammlung von SQL-Anweisungen, die in einer Datenbank gespeichert sind. Gespeicherte Prozeduren können Geschäftslogik enthalten, die einer der Schlüssel zur Unterscheidung gespeicherter Prozeduren von Ansichten ist. Darüber hinaus können gespeicherte Prozeduren auch Parameter akzeptieren. Wir können in der gespeicherten Prozedur Variablen festlegen, Anweisungen schreiben usw.
So funktionieren gespeicherte Prozeduren
Erstellen Sie zunächst eine gespeicherte Prozedur und führen Sie sie dann aus. Sie müssen die erforderlichen Parameter angeben, wenn der Prozess ausgeführt wird, und dann wird die gespeicherte Prozedur mit den Parametern auf jede im Code angegebene Weise ausgeführt. Schreiben Sie beispielsweise eine gespeicherte Prozedur, die einen FruitId-Parameter akzeptiert. Die gespeicherte Prozedur kann dann diesen Parameter abrufen und ihn verwenden, um den Bestand dieser bestimmten Frucht zu überprüfen. Wir können also die gespeicherte Prozedur aufrufen, d. h. jedes Mal mit einer anderen Frucht-ID wird ein Wert zurückgegeben und angezeigt, wie viele Früchte sich in diesem Bestand befinden.
Eine gespeicherte Prozedur erstellen
Wir können eine gespeicherte Prozedur über die CREATE PROCEDURE-Anweisung erstellen
CREATE PROCEDURE demo_name(p_1 INT) BEGIN ...code goes here... END;
demo_name bezieht sich auf den Namen der gespeicherten Prozedur, Klammern sind erforderlich. Wenn sie keine Parameter enthält, können die Klammern leer sein.
Der Hauptteil der gespeicherten Prozedur befindet sich zwischen den Schlüsselwörtern BEGIN und END. Diese Schlüsselwörter werden zum Schreiben zusammengesetzter Anweisungen verwendet. Eine zusammengesetzte Anweisung kann mehrere Anweisungen enthalten, die bei Bedarf verschachtelt werden können.
Beispiel: Erstellen Sie eine gespeicherte Prozedur mit dem Namen FruitStock:
DELIMITER // CREATE PROCEDURE FruitStock(thisFruit SMALLINT) BEGIN SELECT Fruit.FruitName, Fruit.Inventory, Units.UnitName FROM Fruit INNER JOIN Units ON Fruit.UnitId = Units.UnitId WHERE Fruit.FruitId = thisFruit; END // DELIMITER ;
Nachdem Sie eine gespeicherte Prozedur erstellt haben, wird diese gespeicherte Prozedur als nächstes aufgerufen
Aufrufen einer ID mit einem Parameter von 1
CALL FruitStock(1);
Eine gespeicherte Prozedur löschen
Sie können die DROP PROCEDURE-Anweisung verwenden, um eine gespeicherte Prozedur zu löschen.
DROP PROCEDURE FruitStock;
Ändern der gespeicherten Prozedur
In der gespeicherten Prozedur können Sie die gespeicherte Prozedur ALTER PROCEDURE durch die folgenden Anweisungen ändern.
Es ist zu beachten, dass Sie, wenn Sie den Hauptteil einer gespeicherten Prozedur oder einen ihrer Parameter ändern möchten, die Prozedur löschen und erneut erstellen müssen
Beispiel: Fügen Sie die Liste zu hinzu zurückgegeben werden von Fruit.FruitId
DROP PROCEDURE IF EXISTS FruitStock; DELIMITER // CREATE PROCEDURE FruitStock(thisFruit SMALLINT) BEGIN SELECT Fruit.FruitId, Fruit.FruitName, Fruit.Inventory, Units.UnitName FROM Fruit INNER JOIN Units ON Fruit.UnitId = Units.UnitId WHERE Fruit.FruitId = thisFruit; END // DELIMITER ;
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für alle hilfreich ist.
Das obige ist der detaillierte Inhalt vonWas ist eine gespeicherte MySQL-Prozedur?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!