Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เราจะใช้คำสั่งที่เตรียมไว้ในกระบวนงานที่เก็บไว้ได้อย่างไร?


หากเราต้องการใช้คำสั่งที่เตรียมไว้ในโพรซีเดอร์ที่เก็บไว้ จะต้องเขียนไว้ในบล็อก 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)