您好,欢迎访问一九零五行业门户网

创建一个MySQL存储过程,该存储过程以数据库名称作为参数,列出特定数据库中包含详细信息的表

假设当前我们使用一个名为“query”的数据库,其中包含以下表格 -
mysql> show tables in query;+-----------------+| tables_in_query |+-----------------+| student_detail || student_info |+-----------------+2 rows in set (0.00 sec)
现在,以下是一个存储过程,它将接受数据库的名称作为其参数,并为我们提供包含详细信息的表列表 -
mysql> delimiter//mysql> create procedure tb_list(db_name varchar(40)) -> begin -> set @z := concat('select * from information_schema.tables where table_schema = ','\'',db_name,'\''); -> prepare stmt from @z; -> execute stmt; -> end //query ok, 0 rows affected (0.06 sec)
现在通过提供数据库名称作为其参数来调用此存储过程 -
mysql> delimiter;mysql> call tb_list('query')\g*************************** 1. row *************************** table_catalog: def table_schema: query table_name: student_detail table_type: base table engine: innodb version: 10 row_format: dynamic table_rows: 4 avg_row_length: 4096 data_length: 16384 max_data_length: 0 index_length: 0 data_free: 0 auto_increment: null create_time: 2017-12-13 16:25:44 update_time: null check_time: null table_collation: latin1_swedish_ci checksum: null create_options: table_comment:*************************** 2. row *************************** table_catalog: def table_schema: query table_name: student_info table_type: base table engine: innodb version: 10 row_format: dynamic table_rows: 4 avg_row_length: 4096 data_length: 16384 max_data_length: 0 index_length: 0 data_free: 0 auto_increment: null create_time: 2017-12-12 09:52:51 update_time: null check_time: null table_collation: latin1_swedish_ci checksum: null create_options: table_comment:2 rows in set (0.00 sec)
以上就是创建一个mysql存储过程,该存储过程以数据库名称作为参数,列出特定数据库中包含详细信息的表。的详细内容。
其它类似信息

推荐信息