我在其中一个 MySQL 数据库中创建了一个存储过程,比如“db_name”。现在在该存储过程中,我正在执行以下 SQL 查询(用于获取特定表的大小,以 MB 为单位),它访问 MySQL 的 INFORMATION_SCHEMA 数据库。
SELECT ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024),2)
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'table_name'
AND TABLE_SCHEMA = 'db_name';
上述查询不会产生任何结果。可能是因为在一个数据库中创建的存储过程正试图访问另一个数据库或模式中的表。
有谁知道如何以存储过程或任何替代方式成功执行上述查询?