Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Truy cập bảng qua MySQL stored procedure với tham số tên bảng

Stored procedure có thể truy cập một hoặc nhiều bảng. Ví dụ thủ tục nhận tên bảng làm tham số, dùng SQL động:

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)

Gọi thủ tục:

mysql> DELIMITER ;
mysql> CALL access('student_info');
+------+---------+----------+------------+
| id   | Name    | Address  | Subject    |
+------+---------+----------+------------+
| 101  | YashPal | Amritsar | History    |
| 105  | Gaurav  | Jaipur   | Literature |
| 125  | Raman   | Shimla   | Computers  |
+------+---------+----------+------------+

Dùng PREPARE/EXECUTE để chạy truy vấn động từ tên bảng tham số.