数据库的写操作(新增/更新/删除)

Original 2019-04-12 23:27:25 411
abstract:<?php/** * 一、pdo 添加操作 *///1.连接数据库$pdo = new PDO('mysql:dbname=php','root','root');//2.执行查询//准备sql语句$sql = "insert into `staff`(`name`,`age`,`sex`,`position`,`mobile`,`h

<?php
/**
* 一、pdo 添加操作
*/

//1.连接数据库
$pdo = new PDO('mysql:dbname=php','root','root');

//2.执行查询
//准备sql语句
$sql = "insert into `staff`(`name`,`age`,`sex`,`position`,`mobile`,`hiredate`) values ('笑颜常开',60,1,'省委书记','18699887766',1554295214)";
//验证sql语句并生成预处理对象
$stmt = $pdo->prepare($sql);

////3.验证SQL语句,创建预处理对象。此时,结果集已经存储到了$stmt对象中
$stmt->execute();

//4.参数绑定,使用字段在字段列表中的索引。注意是从1开始编号,一定要记住
$stmt->bindColumn(1,$id,PDO::PARAM_INT);
$stmt->bindColumn(2,$name,PDO::PARAM_STR);
$stmt->bindColumn(3,$age,PDO::PARAM_INT);
$stmt->bindColumn(4,$sex,PDO::PARAM_INT);
$stmt->bindColumn(5,$position,PDO::PARAM_STR);
$stmt->bindColumn(6,$mobile,PDO::PARAM_STR);
$stmt->bindColumn(7,$hiredate,PDO::PARAM_INT);


//5.执行SQL语句(成功true,失败false)
if ($stmt->execute()) {
   echo ($stmt->rowCount()>0) ? '成功添加了'.$stmt->rowCount().'条记录!' : '没有记录被添加!';
} else {
   exit(print_r($stmt->errorInfo(),true));
}

/**
* 二、pdo 添加操作
*/

//1.连接数据库
$pdo = new PDO('mysql:dbname=php','root','root');

//2.执行查询
//准备sql语句
$sql = "update `staff` set `name`='李军' where `id`=11;";
//验证sql语句并生成预处理对象
$stmt = $pdo->prepare($sql);

////3.验证SQL语句,创建预处理对象。此时,结果集已经存储到了$stmt对象中
$stmt->execute();

//4.参数绑定,使用字段在字段列表中的索引。注意是从1开始编号,一定要记住
$stmt->bindColumn(1,$id,PDO::PARAM_INT);
$stmt->bindColumn(2,$name,PDO::PARAM_STR);
$stmt->bindColumn(3,$age,PDO::PARAM_INT);
$stmt->bindColumn(4,$sex,PDO::PARAM_INT);
$stmt->bindColumn(5,$position,PDO::PARAM_STR);
$stmt->bindColumn(6,$mobile,PDO::PARAM_STR);
$stmt->bindColumn(7,$hiredate,PDO::PARAM_INT);


//5.执行SQL语句(成功true,失败false)
if ($stmt->execute()) {
   echo ($stmt->rowCount()>0) ? '成功更新了'.$stmt->rowCount().'条记录!' : '没有记录被更新!';
} else {
   exit(print_r($stmt->errorInfo(),true));
}

/**
* 三、pdo 删除操作
*/


//1.连接数据库,创建pdo对象
$pdo = new PDO('mysql:dbname=php','root','root');

//2.创建SQL语句
$sql = "DELETE FROM `staff` WHERE `id`=:id";

//3.验证SQL语句,创建预处理对象
$stmt = $pdo->prepare($sql);

//4参数绑定
$id = 23;
$stmt->bindParam(':id',$id,PDO::PARAM_INT);


//5.执行SQL语句(成功true,失败false)
if ($stmt->execute()) {
   echo ($stmt->rowCount()>0) ? '成功删除了'.$stmt->rowCount().'条记录!' : '没有记录被删除!';
} else {
   exit(print_r($stmt->errorInfo(),true));
}


QQ图片20190412231819.png

QQ图片20190412223218.png

QQ图片20190412232615.png


Correcting teacher:天蓬老师Correction time:2019-04-13 09:01:38
Teacher's summary:如果是开发或学习阶段, 多加一个执行判断的处理很好, 上线之后, 应该将这些错误信息的提示关掉, 以防止泄漏数据库信息

Release Notes

Popular Entries