zoukankan      html  css  js  c++  java
  • 使用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
    }
  • 相关阅读:
    微信小程序上拉分页
    关于检测数据类型,三种方法(typeof,instanceof,Object.prototype.toString.call())优缺点
    如何在Devc++中配置OpenCv
    数据库系统和应用
    这是一篇测试文档
    Pandas 表格合并
    es6一些好用的方法总结
    前端面试题
    超有趣! JS是怎么计算1+2!!!
    彻底理解闭包
  • 原文地址:https://www.cnblogs.com/superfeeling/p/5531332.html
Copyright © 2011-2022 走看看