*rowCount無法返回SELECT的行數。
*rowCount可以返回DELETE, INSERT, 或者UPDATE語句的影響行數
記住,是影響行數,不是執行成功的SQL語句的行數↑
select 有兩種方式取得總筆數
1.用count(*)
$sth=$search_pro->prepare("select count(*) from product where state=2");
$sth->execute();
$rowCount=$sth->fetchColumn(); //取得欄位1 的值 (也就是count(*))
或
$q = $search_pro->query(“SELECT count(*) from db;”);
$rows = $q->fetch();
$rowCount = $rows[0];
select 有兩種方式取得總筆數
1.用count(*)
$sth=$search_pro->prepare("select count(*) from product where state=2");
$sth->execute();
$rowCount=$sth->fetchColumn(); //取得欄位1 的值 (也就是count(*))
或
$q = $search_pro->query(“SELECT count(*) from db;”);
$rows = $q->fetch();
$rowCount = $rows[0];
2.用count() fetchAll()
$q = $search_pro->query(“SELECT * from product”);
$rows = $q->fetchAll();
$rowCount = count($rows);
insert、update、delete也有兩種方式取得影響的筆數
1.rowCount()
//如果有存在的話才新增
$sth2=$edm->prepare("insert into test(m_id) select :m_id,:p_id FROM DUAL WHERE NOT EXISTS (select 1 from test where m_id=:m_id)");
$sth2->bindValue(':m_id',$_SESSION['m_id'],PDO::PARAM_INT);
$sth2->bindValue(':m_id',$_SESSION['m_id'],PDO::PARAM_INT);
$sth2->execute();
$qq= $sth2->rowCount();//查詢新增或刪除的資料筆數
2.exec() 執行成功會返回影響的行數
$count2=$add_pro->exec("update login set group=2 where m_id={$_SESSION['m_id']}");
$rows = $q->fetchAll();
$rowCount = count($rows);
insert、update、delete也有兩種方式取得影響的筆數
1.rowCount()
//如果有存在的話才新增
$sth2=$edm->prepare("insert into test(m_id) select :m_id,:p_id FROM DUAL WHERE NOT EXISTS (select 1 from test where m_id=:m_id)");
$sth2->bindValue(':m_id',$_SESSION['m_id'],PDO::PARAM_INT);
$sth2->bindValue(':m_id',$_SESSION['m_id'],PDO::PARAM_INT);
$sth2->execute();
$qq= $sth2->rowCount();//查詢新增或刪除的資料筆數
2.exec() 執行成功會返回影響的行數
$count2=$add_pro->exec("update login set group=2 where m_id={$_SESSION['m_id']}");
沒有留言:
張貼留言