Heim  >  Artikel  >  Datenbank  >  Detaillierte Erläuterung des Aufrufs gespeicherter Prozeduren und Funktionen durch MySQL (Fall)

Detaillierte Erläuterung des Aufrufs gespeicherter Prozeduren und Funktionen durch MySQL (Fall)

coldplay.xixi
coldplay.xixinach vorne
2021-03-26 09:17:214045Durchsuche

Detaillierte Erläuterung des Aufrufs gespeicherter Prozeduren und Funktionen durch MySQL (Fall)

Es gibt viele Möglichkeiten, gespeicherte Prozeduren und Funktionen aufzurufen. Gespeicherte Prozeduren müssen mit der Call-Anweisung aufgerufen werden und die gespeicherten Prozeduren beziehen sich auf die Datenbank. Wenn Sie gespeicherte Prozeduren in anderen Datenbanken ausführen möchten, müssen Sie den Datenbanknamen angeben. Rufen Sie beispielsweise dbname.procname auf. Gespeicherte Funktionen werden auf die gleiche Weise aufgerufen wie vordefinierte Funktionen in MySQL.

(Kostenlose Lernempfehlung: MySQL-Video-Tutorial)

1. Aufrufen gespeicherter Prozeduren

Gespeicherte Prozeduren werden über die Call-Anweisung aufgerufen. Die Syntax lautet wie folgt:

call sp_name([parameter[,...])

Der Aufruf Die Anweisung ruft eine gespeicherte Prozedur auf, die zuvor mit „create procedure“ erstellt wurde, wobei „sp_name“ der Name der gespeicherten Prozedur und „parameter“ der Parameter der gespeicherten Prozedur ist.

【Beispiel 1】Definieren Sie eine gespeicherte Prozedur mit dem Namen CountProcl und rufen Sie diese gespeicherte Prozedur dann auf.

Definieren Sie die gespeicherte Prozedur:

mysql> delimiter //mysql> create procedure CountProcl(in sid int ,out num int)
    -> begin
    -> select count(*) into num from fruits where s_id = sid;
    -> end //Query OK, 0 rows affected (0.06 sec)mysql> delimiter ;

Rufen Sie die gespeicherte Prozedur auf:

mysql> call CountProcl (101,@num);Query OK, 1 row affected (0.08 sec)

Sehen Sie sich die zurückgegebenen Ergebnisse an:

mysql> select @num;+------+| @num |+------+|    3 |+------+1 row in set (0.00 sec)

Die gespeicherte Prozedur gibt die vom Obstverkäufer bereitgestellten Obstsorten unter Angabe von s_id=101 zurück Num-Variable, verwenden Sie Select Check, das zurückgegebene Ergebnis ist 3.

2. Gespeicherte Funktionen aufrufen

In MySQL ist die Verwendung gespeicherter Funktionen dieselbe wie die Verwendung interner MySQL-Funktionen. Das heißt, benutzerdefinierte gespeicherte Funktionen und interne MySQL-Funktionen haben die gleiche Natur.

[Beispiel 2] Definieren Sie die Speicherfunktion CountProc2 und rufen Sie dann diese Funktion auf. Der Code lautet wie folgt:

mysql> delimiter //mysql> create function CountProc2 (sid int)
    -> returns int
    -> begin
    -> return (select count(*) from fruits where s_id = sid);
    -> end//Query OK, 0 rows affected (0.06 sec)mysql> delimiter ;

Rufen Sie die Speicherfunktion auf:

mysql> delimiter ;mysql> select CountProc2(101);+-----------------+| CountProc2(101) |+-----------------+|               3 |+-----------------+1 row in set (0.05 sec)

Sie können sehen, dass dieses Beispiel das gleiche Ergebnis wie das vorherige Beispiel zurückgibt. Obwohl die Speicherfunktion und die Speicherprozeduren etwas anders definiert sind, erreichen sie die gleiche Funktionalität.

Weitere verwandte kostenlose Lernempfehlungen: MySQL-Tutorial(Video)

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Aufrufs gespeicherter Prozeduren und Funktionen durch MySQL (Fall). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen