我们如何通过 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)
广告