Heim > Datenbank > MySQL-Tutorial > Hauptteil

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

coldplay.xixi
Freigeben: 2021-03-26 09:17:21
nach vorne
4092 Leute haben es durchsucht

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[,...])
Nach dem Login kopieren

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 ;
Nach dem Login kopieren

Rufen Sie die gespeicherte Prozedur auf:

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

Sehen Sie sich die zurückgegebenen Ergebnisse an:

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

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 ;
Nach dem Login kopieren

Rufen Sie die Speicherfunktion auf:

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

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!

Verwandte Etiketten:
Quelle:csdn.net
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage