php - PDO:使用 rowCount 确定数据库中的表数?

标签 php mysql pdo rowcount

我正在使用安装一些表的 CMS,然后验证安装正确的所有内容并尝试计算数据库中的表数。 (注意目标是计算表格本身而不是表格中的行)

使用的查询是“SHOW TABLES”,结果保存到“$result”。像这样:

$link->query("SHOW TABLES")

然后在代码的更下方有一个 $result 的计数,如下所示:

if ($result->rowCount() > 0) {
    $r = $result->fetchAll(PDO::FETCH_ASSOC);
}else{
    $r = false;
    return $r;
}

当我测试结果时,我得到 0 返回。 (数据库中有 14 个表)使用 SHOW TABLES 时 rowCount 是适用的正确方法吗?从我读到的 rowCount 只计算受影响的行。由于 SHOW TABLES 不会影响任何东西,因此它不会算任何东西。

我的假设是正确的还是这里发生了其他事情?

最佳答案

尝试

$count = $link->query('show tables')->fetch(PDO::FETCH_NUM);

关于php - PDO:使用 rowCount 确定数据库中的表数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14630763/

相关文章:

mysql - 从行中的金额中获取总数 MySQL PHP

php 和 mysql 查询返回问题

php - 使用 PDO prepare 和 INSERT 不在数据库中输入表单

php - 在 PDO 中获取 SUM

php - 准备查询时如何删除任何字符串的引号

php - 如何使用 Drupal `db_select()` 方法转换查询?

php - 用户提交代码演示区的安全预防措施和技术

python - 错误 1318 : Incorrect number of arguments for PROCEDURE ComicHub. sp_createUser;预期 3,得到 4

php - 为什么这个日期功能只能在 2016 年 12 月 30 日之前使用?

php - 验证在网站上输入的用户名密码与MySQL数据库上的密码