为什么要使用mysql的stmt_使用mysqli_stmt类
在生成网页时,许多PHP脚本通常都会执行除参数以外,其他部分完全相同的查询语句,针对这种重复执行一个查询,每次迭代使用不同的参数情况,MySQL从4.1版本开始提供了一种名为预处理语句(prepared statement)的机制。它可以将整个命令向MySQL服务器发送一次,以后只有参数发生变化,MySQL服务器只需对命令的结构做一次分析就够了。这不仅大大减少了需要传输的数据量,还提高了命令的处理效率。可以用mysqli扩展模式中提供的mysqli_stmt类的对象,去定义和执行参数化的SQL命令,mysqli_result类中包含的全部成员属性和成员方法如表13-6和表13-7所示。
表13-6 mysqli_stmt类中的成员方法(共12个)
成员方法名
描 述
bind_param()
该方法把预处理语句各有关参数绑定到一些
PHP变量上,注意参数的先后顺序
bind_result()
预处理语句执行查询之后,利用该方法将变量绑定到所获取的字段
close()
一旦预处理语句使用结果之后,它所占用的资源可以通过该方法回收
data_seek()
在预处理语句中移动内部结果的指针
execute()
执行准备好的预处理语句
fetch()
获取预处理语句结果的每条记录,并将相应的字段赋给绑定结果
free_result()
回收由该对象指定的语句占用的内存
result_metadata()
从预处理中返回结果集原数据
prepare()
无论是绑定参数还是绑定结果,都需要使用
该方法准备要执行的预处理语句
send_long_data()
发送数据块
reset()
重新设置预处理语句
store_result()
从预处理语句中获取结果集
表13-7 mysqli_stmt类中的成员属性(共6个)
成员属性名
描 述
$affected_rows
返回该对象指定的最后一条语句所影响的记录数。
注意,该方法只与插入、修改和删除三种查询句有关
$errno
返回该对象指定最近所执行语句的错误代码
$error
返回该对象指定最近所执行语句的错误描述字符串
$param_count
返回给定的预处理语句中需要绑定的参数个数
$sqlstate
从先前的预处理语句中返回SQL状态错误代码
$num_rows
返回stmt对象指定的SELECT语句获取的记录数
$stmt = $dbConnection->prepare('SELECT * FROM employees WHERE name = ?');$stmt->bind_param('s', $name);$stmt->execute();$result = $stmt->get_result();while ($row = $result->fetch_assoc()) {//do something with $row
}
为什么要使用mysql的stmt_使用mysqli_stmt类相关推荐
- c mysql封装 jdbc_利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现
最近看老罗的视频,跟着完成了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...
- mysql 常用小工具包_mssql+mysql小工具(无需环境依赖)-mysql数据库批量实体CS类导出工具下载v3.0免费版-西西软件下载...
mysql数据库批量实体CS类导出工具是一个功能简单的数据库小工具,可以选中数据表执行查询,以及自定义sql语句,查询或者执行增删改,可以查看目标服务器对应数据库以及表和字段信息,不需要单独安装mys ...
- 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)...
最近看老罗的视频,跟着完成了利用Java操作MySQL数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...
- mysql封装 javabean,利用Java针对MySql封装的jdbc框架类JdbcUtils完整实现(包含增删改查、JavaBean反射原理,附源码)...
最近看老罗的视频,跟着完成了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...
- c mysql 工具类_Jave工具——servlet+jsp编程中mysql数据库连接及操作通用工具类
该工具类是在JavaWeb中连接mysql所用到的通用工具类 该类用于Java+Servlet的编程中,方便数据库的操作,连接,获取其列表值.下面是这个数据库操作类的通用方法,基本上能够用于类里面只含 ...
- java mysql jdbc 封装_利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包括增删改查、JavaBean反射原理,附源代码)...
近期看老罗的视频,跟着完毕了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完毕对数据库的增删改查.当中查询这块,包含普通的查询和利用反射完毕的查询,主要包含以下几个函数接口 ...
- mysql的数据层基类_C# 基于MySQL的数据层基类(MySQLHelper)
using System; using System.Data; using MySql.Data; using MySql.Data.MySqlClient; namespace DBUtility ...
- c 创建mysql实体模型_EntityFrameworkCore 根据实体类自动创建数据库
1.首先新建 Asp.Net Core WebApi 项目 2.添加一下引用 : 2.1 Pomelo.EntityFrameworkCore.MySql(我用的Mysql 根据自己情况引用就行) ...
- JAVA——Java操作MySQL数据库的简单工具类[CLASS:DatabaseUtil]
预备知识 Java连接MySQL数据库 源代码 package club.zstuca.util;import java.sql.Connection; import java.sql.DriverM ...
最新文章
- LeetCode 35.搜索插入位置
- 基于LVS-DR集群的持久链接实验
- 多元有序logistic回归_医学统计与R语言:多分类logistic回归HosmerLemeshow拟合优度检验...
- 【Netty】NIO 缓冲区 ( Buffer ) 分散 Scattering 与 聚合 Gathering 操作
- c 输出空格_Python编程:案例详解输出函数print
- mysql+where+且,MySQL WHERE
- 企业应用人工智能面临的挑战
- Erlang语言学习入门
- form组件、cookie、session机制
- JSON(4)---JSON.parse()
- 华鑫证券王习平:让投资变成一件容易事、有趣事
- 数据库系统——数据模型基本概念详解
- ionic android n权限,ionic权限问题
- matlab 求公因数,符号运算提取多项式系数和公因数
- TortoiseSVN安装失败——Please install the universal CRT first
- 随笔(面试相关)(杂)
- 高中数学怎么学好如何学好高中数学
- MathType中的四则运算符号该怎样进行输入
- Java爬虫获取豆瓣的短评数据
- gPTP时钟同步(时间同步)协议简介