<?php //新增操作 header("content-type:text/html;charset=utf-8"); //1.连接数据库 $pdo = new PDO('mysql:host=127.0.0.1;dbname=shopimooc', 'root', 'root'); $pdo->query('set names utf8;'); //2.执行操作 $sql = 'INSERT INTO `imooc_cate` (`cName`) VALUES (:cName) '; $stmt = $pdo->prepare($sql); $cName = '大米手机'; $stmt->bindParam(':cName', $cName, PDO::PARAM_STR, 10); $stmt->execute(); if ($stmt->rowCount() > 0) { echo '成功的添加了' . $stmt->rowCount() . '条记录'; } //更新操作 $sql = "UPDATE `imooc_cate` SET `cName` = '小米手环' WHERE `id` = 26"; $stmt = $pdo->prepare($sql); $stmt->execute(); if ($stmt->rowCount() > 0) { echo '成功的更新了' . $stmt->rowCount() . '条记录'; } //删除操作 $sql = "DELETE FROM `imooc_cate` WHERE id = 33"; $stmt = $pdo->prepare($sql); $stmt->execute(); if($stmt->rowCount()>0){ echo '成功的删除了'.$stmt->rowCount().'条记录'; } //关闭连接 $pdo = null; ?>
注:PDO::rowCount()方法在对于增删改操作时返回的值是正确的,但当涉及查的操作时,会受当前使用的数据库影响,若一次查询的量过于庞大,会导致数据库只返回一部分结果集,在需要时再返回其他结果集,从而使PDO::rowCount()方法出错,此时需要使用另一种方法代替。
query方法——
$sql = 'SELECT COUNT(*) FROM `message`'; $row = $pdo->query($sql); $rowcount = $row->fetch(); echo $rowcount[0];
execute(预处理方法)——
$sql = 'SELECT COUNT(*) FROM `message`'; $stmt = $pdo->prepare($sql); $stmt->execute(); $rowcount = $stmt->fetchColumn(0); echo $rowcount;