php+mysqli预处理技术实现添加、修改及删除多条数据的方法


Posted in PHP onJanuary 30, 2015

本文实例讲述了php+mysqli预处理技术实现添加、修改及删除多条数据的方法。分享给大家供大家参考。具体分析如下:

首先来说说为什么要有预处理(预编译)技术?举个例子:假设要向数据库添加100个用户,按常规思路,就是向数据库发送100个执行请求,此时,按照 mysql 数据库的工作原理,它需要对每一条执行语句进行编译(这里就有100次)。所以,这里的效率是非常低的。

预处理(预编译)技术的作用,就是减少编译的次数和时间,以提高效果。通过一个案例来说明,预处理(预编译)技术是如何做到的(好吧,先说清楚,当 php 程序第一次发送 sql 语句时,mysql 数据库就编译好,到了后面99次,php只要发送数据过去即可,不需要再进行编译)。

<?php
//1、创建数据库连接对象
$mysqli = new MySQLi("localhost","root","123456","liuyan");
if($mysqli->connect_error){
 die($mysqli->connect_error);
}
$mysqli->query("set names 'GBK'");
//2、创建预编译对象
$sql = "insert into account(id,balance) values(?,?)";
//这里用 ? 来代替要插入的数据值
$stmt = $mysqli->prepare($sql);
//返回一个statement对象,对象中的方法见手册 MySQLi_STMT
//3、绑定参数(需要插入的数据),并执行
$id=null;//这里我数据库设置成了 primary key auto_increment
$balance=100.5;
$stmt->bind_param("id",$id,$balance);
//绑定参数,返回值为布尔值。"if"按顺序代表插入数据的数据类型
//这里$id为int,用i表示,$balance为float型,用d表示,具体见手册
$res = $stmt->execute();//执行语句,返回值为布尔类型
//4、判断是否执行成功
if(!$res){
 echo "数据插入失败,balance值为:".$balance;
}else{
 echo "成功";
}

/*
*****插入第二条数据
*/
//3、绑定参数(需要插入的数据),并执行
$id=null;//这里我数据库设置成了 primary key auto_increment
$balance=400.3;
$stmt->bind_param("id",$id,$balance);
//绑定参数,返回值为布尔值。"if"按顺序代表插入数据的数据类型
//这里$id为int,用i表示,$balance为float型,用d表示。
$res = $stmt->execute();//执行语句,返回值为布尔类型
//4、判断是否执行成功
if(!$res){
 echo "数据插入失败,balance值为:".$balance;
}else{
 echo "成功";
}
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP 高手之路(三)
Oct 09 PHP
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
Feb 22 PHP
提示Trying to clone an uncloneable object of class Imagic的解决
Oct 27 PHP
关于二级目录拖拽排序的实现(源码示例下载)
Apr 26 PHP
PHP的password_hash()使用实例
Mar 17 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
Jun 05 PHP
PHP如何使用Memcached
Apr 05 PHP
PHP多维数组元素操作类的方法
Nov 14 PHP
PHP数据分析引擎计算余弦相似度算法示例
Aug 08 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
php使用curl模拟多线程实现批处理功能示例
Jul 25 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
php+xml结合Ajax实现点赞功能完整实例
Jan 30 #PHP
PHP速成大法
Jan 30 #PHP
php+mysql结合Ajax实现点赞功能完整实例
Jan 30 #PHP
PHP制作百度词典查词采集器
Jan 29 #PHP
php+mysqli事务控制实现银行转账实例
Jan 29 #PHP
php+mysqli批量查询多张表数据的方法
Jan 29 #PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
Jan 29 #PHP
You might like
PHP mkdir()定义和用法
2009/01/14 PHP
2014过年倒计时示例
2014/01/31 PHP
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
2016/12/29 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
PHP中strtr与str_replace函数运行性能简单测试示例
2019/06/22 PHP
DOM和XMLHttpRequest对象的属性和方法整理
2012/01/04 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
2014/03/18 Javascript
node.js中的socket.io的广播消息
2014/12/15 Javascript
JS实现文字掉落效果的方法
2015/05/06 Javascript
node.js调用C++开发的模块实例
2015/07/03 Javascript
Bootstrap幻灯片轮播图支持触屏左右手势滑动的实现方法
2016/10/13 Javascript
javascript匀速动画和缓冲动画详解
2016/10/20 Javascript
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
node.js实现微信JS-API封装接口的示例代码
2017/09/06 Javascript
element 结合vue 在表单验证时有值却提示错误的解决办法
2018/01/22 Javascript
重新认识vue之事件阻止冒泡的实现
2018/08/02 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
2019/08/20 Javascript
js实现自定义右键菜单
2020/05/18 Javascript
Python读取mp3中ID3信息的方法
2015/03/05 Python
python将ip地址转换成整数的方法
2015/03/17 Python
浅析Python中MySQLdb的事务处理功能
2016/09/21 Python
mac 安装python网络请求包requests方法
2018/06/13 Python
六行python代码的爱心曲线详解
2019/05/17 Python
Python多线程通信queue队列用法实例分析
2020/03/24 Python
Python+Xlwings 删除Excel的行和列
2020/12/19 Python
六十岁生日答谢词
2014/01/10 职场文书
餐饮业经理竞聘演讲稿
2014/01/14 职场文书
网上快餐厅创业计划书
2014/02/01 职场文书
运动会方阵解说词
2014/02/12 职场文书
第一批党的群众路线教育实践活动工作总结
2014/03/03 职场文书
体育节口号
2014/06/19 职场文书
《最后一头战象》教学反思
2016/02/16 职场文书
立秋之描写立秋的作文(五年级)
2019/08/08 职场文书
MySQL笔记 —SQL运算符
2022/01/18 MySQL
Win11跳过联网界面创建本地管理账户的3种方法
2022/04/20 数码科技