Rumah >pangkalan data >tutorial mysql >Bagaimanakah prosedur tersimpan MySQL memanggil prosedur tersimpan MySQL lain di dalamnya?

Bagaimanakah prosedur tersimpan MySQL memanggil prosedur tersimpan MySQL lain di dalamnya?

王林
王林ke hadapan
2023-09-05 08:45:121213semak imbas

Bagaimanakah prosedur tersimpan MySQL memanggil prosedur tersimpan MySQL lain di dalamnya?

Prosedur tersimpan MySQL berkemungkinan besar boleh memanggil prosedur tersimpan MySQL lain di dalamnya. Untuk menunjukkan ini, mari kita ambil contoh di mana satu prosedur tersimpan akan memanggil prosedur tersimpan yang lain untuk mengetahui last_insert_id.

Contoh

mysql> Create table employee.tbl(Id INT NOT NULL AUTO_INCREMENT, Name Varchar(30) NOT NULL, PRIMARY KEY(id))//
Query OK, 0 rows affected (3.87 sec)

mysql> Create Procedure insert1()
   -> BEGIN insert into employee.tbl(name) values ('Ram');
   -> END//
Query OK, 0 rows affected (0.10 sec)

Kini, dalam prosedur seterusnya, insert2(), kita akan memanggil prosedur tersimpan pertama, iaitu insert1().

mysql> Create Procedure insert2()
   -> BEGIN
   -> CALL insert1();
   -> Select last_insert_id();
   -> END //
Query OK, 0 rows affected (0.11 sec)
mysql> Delimiter ;

mysql> Call insert2();
+------------------+
| last_insert_id() |
+------------------+
| 1                |
+------------------+
1 row in set (0.36 sec)
Query OK, 0 rows affected (0.37 sec)

Set keputusan di atas menunjukkan bahawa apabila kita memanggil insert1(), ia memasukkan nilai pertama dalam jadual bernama employee.tbl, dan apabila kita memanggil insert2() dalam prosedur tersimpan kedua Apabila last_insert_id() dipilih, ia memberikan keluaran 1.

Atas ialah kandungan terperinci Bagaimanakah prosedur tersimpan MySQL memanggil prosedur tersimpan MySQL lain di dalamnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam