0

这个问题以前可能有人问过,但方式不同。我正在尝试检查 mysql 表中的所有字段是否为空。

有一个 ID 字段设置为主键并具有自动索引,因此它有一个值,但其余列默认为空。

这是我到目前为止所拥有的:

public function check_empty_table() {
    $sql = "SELECT * FROM products";

    $fields = array();

    if ($stmt = $this->connect->prepare($sql)) {
        $stmt->execute();
        while ($stmt->fetch()) {


        }
    }

}

我还应该添加什么?我抓取什么或如何抓取并不重要,我只想将所有数据放入该数组中,然后检查该数组是否为空。

4

2 回答 2

2

如果要检查表是否为空,可以使用

SELECT COUNT(*) FROM table;

如果里面什么都没有,它应该返回 0。

于 2012-04-14T15:13:30.203 回答
1

COUNT() 很酷的一点是它不计算 NULL 值。

因此,如果您对除 ID 列之外的每一列都执行此操作,并且每列都得到零,那么它就是“空白”:

SELECT COUNT(COL1), COUNT(COL2) FROM products
于 2012-04-14T15:58:29.060 回答