PHP Mysql Table information


PHP Mysql Table information

这行得通:

$result = mysql_query("SHOW TABLES FROM `someDatabase` ");
while($row = mysql_fetch_array($result)){
  echo $row[0].'<br>';
}

我得到了数据库表。是否有可能从相同的查询中获取更多信息?我想在每个表名旁边显示记录的数量,如果有更多的选项可用,可能还会显示更多。

当然,

运行如下查询:

SHOW TABLE STATUS FROM your-database

会给你一堆数据(行,排序等)

编辑

您也可以运行其他命令,如:

SHOW FUNCTION STATUS WHERE `Db`='your-database';
SHOW PROCEDURE STATUS WHERE `Db`='your-database';
SHOW TRIGGERS FROM `your-database`;

看一下information_schema

select *
from information_schema.tables 
where table_schema = 'your_db'

不,不是来自同一查询。您必须获得表名,然后单独运行"select count(*) from $table"。MyISAM确实在某个地方存储了行数,可以从单个总体查询中检索。但是InnoDB不存储全局计数-如果有未提交的事务,它总是错误的,并且计数将相对于正在进行计数的用户。