博主信息
博文 59
粉丝 0
评论 1
访问量 58027
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
MySQLi面向对象实现更新操作和PDO实现删除操作—2018年4月26日
白猫警长的博客
原创
1017人浏览过

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();
 ?>

运行实例 »

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

批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学