批改状态:未批改
                        老师批语:
                    
                            一、使用预处理技术实现更新操作;
功能:更新第31条记录的ID为10,name值为恩格斯。
代码如下:
<?php
//使用预处理技术实现更新操作
//1.连接数据库
require 'mysqli_connect.php';
//2.sql模板
$sql="UPDATE IGNORE students set id=?,name=?  where id=31;";
//3.创建预处理对象,将SQL语句转为对象
$mysqli_yu=mysqli_stmt_init($db);
//4.检测当前的预处理语句是否正确
if(mysqli_stmt_prepare($mysqli_yu,$sql)){
    //将变量与语句中的占位符进行绑定
	mysqli_stmt_bind_param($mysqli_yu,"is",$id,$name);
    //下面是更新的内容
    $id=10;$name='恩格斯';
    //执行SQL
    mysqli_stmt_execute($mysqli_yu);
    	//判断是否执行成功
    	if(mysqli_stmt_affected_rows($mysqli_yu)>0){
	        echo '成功更新了'.mysqli_stmt_affected_rows($mysqli_yu).'条记录';
        }else{//重复更新给出信息
	        echo '无需重复更新';
        }
    }else{//给出错误信息
	    exit(mysqli_stmt_errno($mysqli_yu).':'.mysqli_stmt_error($mysqli_yu));
    }
//5.注销预处理对象
mysqli_stmt_close($mysqli_yu);
//6.关闭数据库连接
mysqli_close($db);点击 "运行实例" 按钮查看在线实例
运行后:

二、使用预处理技术实现删除操作
功能:删除第35条记录;
代码如下:
<?php
//使用预处理技术实现删除操作
//1.连接数据库
require 'mysqli_connect.php';
//2.sql模板
$sql="DELETE IGNORE FROM students  where id=?;";
//3.创建预处理对象,将SQL语句转为对象
$mysqli_yu=mysqli_stmt_init($db);
//4.检测当前的预处理语句是否正确
if(mysqli_stmt_prepare($mysqli_yu,$sql)){
    //5.将变量与语句中的占位符进行绑定
	mysqli_stmt_bind_param($mysqli_yu,"i",$id);
    
    //将删除的记录ID
    $id=35;
    
    //6.执行SQL
    mysqli_stmt_execute($mysqli_yu);
    	//判断是否执行成功
    	if(mysqli_stmt_affected_rows($mysqli_yu)>0){
	        echo '成功删除了'.mysqli_stmt_affected_rows($mysqli_yu).'条记录';
        }else{//重复更新给出信息
	        echo '无需重复删除';
        }
    }else{//给出错误信息
	    exit(mysqli_stmt_errno($mysqli_yu).':'.mysqli_stmt_error($mysqli_yu));
    }
//7.注销预处理对象
mysqli_stmt_close($mysqli_yu);
//8.关闭数据库连接
mysqli_close($db);点击 "运行实例" 按钮查看在线实例
三、总结
使用预处理技术步骤如下:
连接数据库
给出sql模板
创建预处理对象,将SQL语句转为对象
检测当前的预处理语句是否正确
将变量与语句中的占位符进行绑定
执行SQL
注销预处理对象
关闭数据库连接
 
                 
                        
                    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号