博客列表 >1. MySQLi面向对象实现更新操作 2. PDO实现删除操作(参考更新操作独立完成) :2018年4月26日作业

1. MySQLi面向对象实现更新操作 2. PDO实现删除操作(参考更新操作独立完成) :2018年4月26日作业

杜苏华迈专注于物联网可视化管理的博客
杜苏华迈专注于物联网可视化管理的博客原创
2018年04月26日 11:02:11943浏览

1. MySQLi面向对象实现更新操作


mysqli面向对象更新数据.png



实例 mysqli面向对象方式连接数据库   mysqli_connect.php

<?php
// *
//  * mysqli面向对象方式连接数据库
//  * 步骤:
//  * 1. 创建连接参数
//  * 2. 连接数据库服务器,mysqli:constructor
//  * 3. 判断是否连接成功
//  * 4.设置默认数据库
//  * 5. 设置客户端默认字符编码集合
//  *


//1. 创建连接参数
//创建连接参数: 因为连接参数不会经常变化,所以推荐使用常量

  $db_host='127.0.0.1';
  $db_user='root';
  $db_pass='root';
  $db_name='php';
  $db_char='utf8';
// define ('DB_USER', 'root');
// define ('DB_PASS', 'root');
// define ('DB_NAME', 'php');
// define ('DB_CHAR', 'utf8');


//2. 连接数据库服务器,mysqli:constructor
$mysqli = @new mysqli($db_host, $db_user,$db_pass);

//3. 测试连接是否成功?

if ($mysqli->connect_errno) {
    exit('连接失败'.$mysqli->connect_errno.':'.$mysqli->connect_error);
}

echo '<h1>连接成功</h1>';

//4.设置默认数据库
$mysqli->select_db($db_name);

//5. 设置客户端默认字符编码集合
$mysqli->set_charset($db_char);

运行实例 »

点击 "运行实例" 按钮查看在线实例


实例 mysqli面向对象更新操作   mysqli_pre_update.php

<meta charset="UTF-8">
<?php
/医院
 * mysqli面向对象更新操作

 * 基本流程:
 * 1.连接数据库
 * 2.准备SQL语句
 * 3.创建出预处理对象stmt
 * 4.检测stmt,预处理的SQL语句对象
 * 5.参数绑定
 * 6.执行SQL语句
 * 6.关闭数据库连接

 */

//1.连接数据库
require 'mysqli_connect.php';

//2.准备SQL语句
$sql = "UPDATE IGNORE staff SET name=?, salary=? WHERE staff_id=20;"; //UPDATE IGNORE staff SET salary=? WHERE staff_id=3

//3.创建出预处理对象stmt
$stmt = $mysqli -> stmt_init();

//4.检测stmt,预处理的SQL语句对象
if ($stmt->prepare($sql)) {
  $date[] = ['name'=>'菜鸟','salary'=>100];


//5.参数绑定
$stmt->bind_param('si', $name,$salary);//  type:'i'

foreach ($date as $staff){
    $name = $staff['name'];
    $salary = $staff['salary'];


//6.执行SQL语句
    $stmt->execute();
    if ($stmt->affected_rows > 0){
        echo '<br>更新成功'.$stmt->affected_rows.'条记录';
    } else {
         echo '<br> 没有更新记录';
    }
}

     } else {  //错误处理
         exit($stmt->errno.':'.$stmt->error);
     }


//6.关闭数据库连接
$mysqli->close();

运行实例 »

点击 "运行实例" 按钮查看在线实例



实例  2. PDO实现删除操作

<meta charset="UTF-8">
<?php
//PDO删除操作
//医院步骤:
//医院1.创建PDO数据库连接对象
//医院2.创建预处理 sql 对象,位符使用命名参数格式:
//医院3.绑定参数到预处理语句的参数中并执行
//医院4.得到受影响的行数,判断是否大于0
//医院5.断开 PDO 连接)


//1.创建PDO数据库连接对象
//简写方式 $pdo = new PDO('mysql:dbname=php', 'root', 'root');
$dsn = 'mysql:host=127.0.0.1;dbname=php;charset=utf8;port=3306'; //创建数据库连接
$pdo = new PDO($dsn,'root','root');

try{
//2.创建预处理 sql 对象,位符使用命名参数格式:
    $stmt = $pdo->prepare("DELETE FROM staff WHERE name=:name");

//3.绑定参数到预处理语句的参数中并执行
    $stmt ->execute(['name'=>'杨康']);

//4.得到受影响的行数,判断是否大于0
    if($stmt->rowCount()>0){
        echo '成功删除了'.$stmt->rowCount().'条记录';
    }else{
        echo '没有记录被删除';
    }
}catch (PDOException $e){
    echo 'Connect ERROR!'.$e->getMessage(); //抛出异常
    die(); //停止脚本执行
}

//5.断开 PDO 连接
$pdo=null;

运行实例 »

点击 "运行实例" 按钮查看在线实例



声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议