Heim > Datenbank > MySQL-Tutorial > Wie erstelle ich eine gespeicherte MySQL-Prozedur, die mehrere Werte aus einer MySQL-Tabelle zurückgibt?

Wie erstelle ich eine gespeicherte MySQL-Prozedur, die mehrere Werte aus einer MySQL-Tabelle zurückgibt?

WBOY
Freigeben: 2023-08-23 12:21:03
nach vorne
869 Leute haben es durchsucht

Wie erstelle ich eine gespeicherte MySQL-Prozedur, die mehrere Werte aus einer MySQL-Tabelle zurückgibt?

Wir können eine gespeicherte Prozedur mit den Parametern IN und OUT erstellen, um mehrere Werte aus einer MySQL-Tabelle abzurufen. Nehmen wir zum besseren Verständnis ein Beispiel für eine Tabelle mit dem Namen „student_info“, die die folgenden Daten enthält: -

mysql> Select * from student_info;
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Jaipur     | Literature |
| 110  | Rahul   | Chandigarh | History    |
| 125  | Raman   | Bangalore  | Computers  |
+------+---------+------------+------------+
4 rows in set (0.01 sec)
Nach dem Login kopieren

Durch Erstellen der folgenden Prozedur mit dem Namen „select_studentinfo“ können wir nun den Wert aus Select value -

mysql> DELIMITER // ;
mysql> Create Procedure Select_studentinfo ( IN p_id INT, OUT p_name varchar(20),OUT p_address varchar(20), OUT p_subject varchar(20))
    -> BEGIN
    -> SELECT name, address, subject INTO p_name, p_address, p_subject
    -> FROM student_info
    -> WHERE id = p_id;
    -> END //
Query OK, 0 rows affected (0.03 sec)
Nach dem Login kopieren

in abrufen Die Tabelle „student_info“ enthält zusätzlich zum 1 IN-Parameter 4 OUT-Parameter. Rufen Sie nun die Prozedur mit dem Bedingungswert auf, den wir wie unten gezeigt bereitstellen möchten: −

mysql> DELIMITER ; //
mysql> CALL Select_studentinfo(110, @p_name, @p_address, @p_subject);
Query OK, 1 row affected (0.06 sec)

mysql> Select @p_name AS Name,@p_Address AS Address, @p_subject AS Subject;
+--------+------------+-----------+
| Name   | Address    | Subject   |
+--------+------------+-----------+
| Rahul  | Chandigarh | History   |
+--------+------------+-----------+
1 row in set (0.00 sec)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie erstelle ich eine gespeicherte MySQL-Prozedur, die mehrere Werte aus einer MySQL-Tabelle zurückgibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
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