MySQLi面向对象实现更新操作和PDO实现删除操作
MySQL面向对象实现新增操作
实例
<?php /** *MySQL预处理执行新增操作 */ // 1.连接数据库 require 'mysqli_connect.php'; // 2.准备SQL语句 $sql = 'INSERT IGNORE staff SET name=?, salary=?;'; // 3.创建预处理对象 $stmt = $mysqli->stmt_init(); // 4.检测stmt,预处理的SQL语句对象 if($stmt->prepare($sql)) { //绑定参数到预处理SQL语句 $stmt->bind_param('si',$name,$salary); //执行新增操作 //设置参数 $name='郭靖'; $salary=8000; //执行预处理语句 $stmt->execute(); if($stmt->affected_rows > 0){ echo "<br>成功新增".$stmt->affected_rows.'条记录,ID:'.$stmt->insert_id; } else { echo "没有新增记录"; } $name='神雕大侠'; $salary=1000; //执行预处理语句 $stmt->execute(); if($stmt->affected_rows > 0){ echo "<br>成功新增".$stmt->affected_rows.'条记录,ID:'.$stmt->insert_id; } else { echo "没有新增记录"; } $name='耶鲁奇才'; $salary=5400; //执行预处理语句 $stmt->execute(); if($stmt->affected_rows > 0){ echo "<br>成功新增".$stmt->affected_rows.'条记录,ID:'.$stmt->insert_id; } else { echo "没有新增记录"; } //5.注销stmt对象 $stmt->close(); } else { // 如果错误则返回错误信息 exit($stmt->errno.':'.$stmt->error); } ?>
运行实例 »
点击 "运行实例" 按钮查看在线实例
数据库连接:
实例
<?php //mysqli面向对象方式连接数据库 //1.连接数据库 require 'mysqli_config.php'; //2.连接数据库服务器 $mysqli = @new mysqli($db_host, $db_user, $db_pass); //3.检测连接是否成功 if($mysqli->connect_errno) { //连接失败则返回错误信息,并结束执行 exit('连接错误'.$mysqli->connect_errno.':'.$mysqli->connect_error); } //4.设置默认数据库 $mysqli->select_db($db_name); //5.设置客户端默认字符编码集 $mysqli->set_charset($db_char); ?>
运行实例 »
点击 "运行实例" 按钮查看在线实例
使用PDO预处理实现删除操作:
实例
<?php /** *PDO预处理执行删除操作 */ // 1.连接数据库 try { $connect = new PDO('mysql:dbname=php','root','root'); } catch (PDOException $e) { exit($e->getMessage()); } // 2.准备SQL语句 $sql = "DELETE FROM staff WHERE staff_id=:staff_id"; //3.创建stmt预处理对象 if($stmt = $connect->prepare($sql)) { //4.将参数绑定到stmt对象,并执行 //设置参数 $baonnd = ['staff_id'=>18]; //绑定参数到SQL语句上,并执行 if($stmt->execute($baonnd)) { // rowCount()返回更新的数量,如果大于0表示有记录被更新啦 if($stmt->rowCount() > 0) { echo "成功删除了".$stmt->rowCount().'条记录'; } else { echo "无删除记录"; } } else { //执行失败的信息 print_r($connect->errorInfo()); exit(); } } else { //$stmt语句对象创建失败 print_r($connect->errorInfo()); exit(); } ?>
运行实例 »
点击 "运行实例" 按钮查看在线实例
MySQLI面向对象实现更新操作
实例
<?php /** *MySQL实现预处理更新操作 */ // //1.连接数据库 // require 'mysqli_connect.php'; // //2.创建SQL语句的模板 // $sql = 'UPDATE staff SET name=?,salary=? WHERE staff_id=?'; // $name='金轮法王'; // $salary=6700; // $staff_id=19; // //3.创建stmt对象:将SQL语句转为对象 // $stmt = mysqli_stmt_init($mysqli); // //4.用stmt对象检测当前预处理语句是否正确,成功返回true,错误返回false // if (mysqli_stmt_prepare($stmt,$sql)) // { // //将变量与SQL语句的模板进行绑定 // mysqli_stmt_bind_param($stmt,'sii',$name,$salary,$staff_id); // //5.执行SQL // if(mysqli_stmt_execute($stmt)) { // if(mysqli_stmt_affected_rows($stmt)>0) { // echo "成功更新了".mysqli_stmt_affected_rows($stmt).'条记录'; // } else { // echo "没有记录被更新"; // } // }else{ // exit(mysqli_stmt_erron($stmt).':'.mysqli_stmt_error($stmt)); // } // }else{ // exit(mysqli_stmt_erron($stmt).':'.mysqli_stmt_error($stmt)); // } // //6.注销stmt对象 // mysqli_stmt_close($stmt); // //7.关闭连接 // mysqli_close($mysqli); //1.连接数据库(服务器) require 'mysqli_connect.php'; //2.准备SQL语句 $sql = 'UPDATE staff SET name=?,sex=?,salary=? WHERE staff_id=?;'; //3.创建STMT预处理对象 $stmt = $mysqli->stmt_init(); //4.检测预处理SQL语句,成功返回true,失败返回false if ($stmt->prepare($sql)){ //绑定参数到预处理SQL语句上的占位符?号 $stmt->bind_param('siii',$name,$sex,$salary,$staff_id); //设置参数 $name = '郭湘'; $sex = 1; $salary = 9000; $staff_id = 11; //执行SQL语句 $stmt->execute(); if($stmt->affected_rows > 0) { echo "成功更新了".$stmt->affected_rows.'条记录'; } else { echo "没有记录被更新"; } } else { exit($stmt->errno.':'.$stmt->error); //5.注销stmt对象 $stmt->close(); } //6.关闭数据库连接 $mysqli->close(); ?>
运行实例 »
点击 "运行实例" 按钮查看在线实例