mysql php中datatime数据类型的NULL值

时间:2017-09-25 16:40:55

标签: php mysql

我有一个名为post_data的表,有9个字段

username, email, pass, cam_name, upd_date(of type datetime) etc ... 

我通过自动更新当前数据和时间将upd_date字段设为NULL。

但问题是,当我在cam_name条件的另一个页面中检索cam_imgrowCount等特定字段时,它会将NULL作为值。我想停止那个..

以下是从数据库中检索指定列的代码

$stmt = $index_home->getDetails();

if($stmt->rowCount() > 0) {
    while($row=$stmt->fetch(PDO::FETCH_ASSOC)) {        
       extract($row);
  }
}   

getDetails实施:

public function getDetails() {
    try {
        $stmt = $this->conn->prepare('SELECT userID, user_name, cam_name, cam_model, cam_rent, cam_img, mobile FROM post_data ORDER BY userID DESC');
        $stmt->execute();
        return $stmt;
        }
    catch(PDOException $ex) {
        echo $ex->getMessage();
    }
}

1 个答案:

答案 0 :(得分:0)

使用 PDO::query() 代替PDOStatement::rowCount()

  

对于大多数数据库, PDOStatement :: rowCount()不返回   受SELECT语句影响的行数。相反,使用   PDO :: query()发出带有相同的SELECT COUNT(*)语句   将谓词作为预期的SELECT语句,然后使用   PDOStatement :: fetchColumn()来检索将要的行数   被退回