如何在儲存過程中使用已準備語句?
如果我們想要在儲存過程中使用準備好的語句,則必須在 BEGIN 和 END 塊內編寫。為了理解它,我們透過一個例子來說明,利用這個例子,我們可以透過將表的名稱作為儲存過程的引數傳遞來獲取表中的所有記錄。
示例
mysql> DELIMITER //
mysql> Create procedure tbl_detail(tab_name Varchar(40))
-> BEGIN
-> SET @A:= CONCAT('Select * from',' ',tab_name);
-> Prepare stmt FROM @A;
-> EXECUTE stmt;
-> END //
Query OK, 0 rows affected (0.00 sec)現在,透過給出表的名稱作為其引數來呼叫此過程,它將顯示該表的所有記錄。
mysql> DELIMITER;
mysql> CALL tbl_detail('Student’);
+------+--------+
| Id | Name |
+------+--------+
| 1 | Ram |
| 2 | Shyam |
| 3 | Gaurav |
+------+--------+
3 rows in set (0.00 sec)
Query OK, 0 rows affected (0.03 sec)
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP