我們如何能透過 MySQL 儲存過程訪問表?


我們能從 MySQL 儲存過程訪問一個或所有表。以下示例中我們建立了一個儲存過程,接受表名作為引數,呼叫後將生成來自該表的全部詳細資訊的結果集。

示例

mysql> Delimiter //
mysql> Create procedure access(tablename varchar(30))
   -> BEGIN
   -> SET @X := CONCAT('Select * from',' ',tablename);
   -> Prepare statement from @X;
   -> Execute statement;
   -> END//
Query OK, 0 rows affected (0.16 sec)

現在,使用表名作為引數呼叫儲存過程,我們需要訪問。

mysql> Delimiter ;

mysql> Call access('student_info');
+------+---------+----------+------------+
| id   | Name    | Address  | Subject    |
+------+---------+----------+------------+
| 101  | YashPal | Amritsar | History    |
| 105  | Gaurav  | Jaipur   | Literature |
| 125  | Raman   | Shimla   | Computers  |
+------+---------+----------+------------+
3 rows in set (0.02 sec)
Query OK, 0 rows affected (0.04 sec)

更新時間:2020 年 6 月 22 日

312 次瀏覽

開啟您的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.