美文网首页
PHP操作mysqli

PHP操作mysqli

作者: 浅唱南山忆 | 来源:发表于2017-05-19 23:44 被阅读0次

    <?php

    mysqli类中的方法都有一个面向过程的函数与之对应,而这些面向过程的函数都继承自mysql

    例: $_mysqli = new mysqli(); $_mysqli->query()==mysqli_query()==mysql_query();

    //1.创建一个mysqli的对象

    $_mysqli = new mysqli();

    //2.连接MySQL的主机、用户、密码、数据库 $_mysali->connect()是mysqli类的构造函数

    $_mysqli->connect('localhost','root','yangfan','guest');

    //3.创建带连接参数的mysqli对象,连接MySQL的主机、用户、密码、数据库

    $_mysqli = new mysqli('localhost','root','yangfan','guest');

    //4.单独选择数据库

    $_mysqli->select_db('testguest');

    //mysqli_connect_errno()函数返回连接数据库返回的错误号。

    //Mysqli_connect_error()函数返回连接数据库返回的错误代码。

    if (mysqli_connect_errno()) {

    echo '数据库连接错误,错误信息:'.mysqli_connect_error();

    exit();

    }

    // errno属性返回数据库操作时的错误号。

    // error属性返回数据库操作时的错误代码。

    if ($_mysqli->errno) {

    echo '数据库操作时发生错误,错误代码是:'.$_mysqli->error;

    }

    //设置一下编码utf8

    $_mysqli->set_charset("utf8");

    //创建一句SQL语句

    $_sql = "SELECT * FROM tg_user";

    //执行sql语句把结果集赋给$_result

    $_result = $_mysqli->query($_sql);

    //将结果集的第一行作为一个索引数组输出

    print_r($_result->fetch_row());

    /将结果集包装成对象

    $_row = $_reslut->fetch_object();

    //输出对象中的一个字段(属性)

    echo $_row->tg_username;

    //遍历所有的用户名称

    while (!!$_row = $_reslut->fetch_object()) {

    echo $_row->tg_username.'

    ';}

    //将结果集包装成数组(索引+关联)

    $_row = $_reslut->fetch_array();

    //输出下标是3的字段(属性)

    echo $_row[3];

    //将结果集包装成索引数组

    $_row = $_reslut->fetch_row();

    echo $_row[3];

    //将结果集包装成关联数组

    $_row = $_reslut->fetch_assoc();

    echo $_row['tg_username'];

    3.确定所选择的行和受影响的行

    通常希望能够确定SELECT查询返回的行数,或者受INSERT、UPDATE或DELET查询

    影响的行数。我们可以使用num_rows和affected_rows两个属性

    //当使用查询时,想了解SELECT查询了多少行,可以使用num_rows。

    echo $_reslut->num_rows;

    //当使用查询时,想了解SELECT、INSERT、UPDATE、DELETE查询时影响的行数,可以使用affected_rows;注意,它是$_mysqli下的属性

    echo $_mysqli->affected_rows;

    //释放查询内存(销毁)

    $_result->free();

    //创建多条SQL语句

    $_sql .= "SELECT * FROM tg_user;";

    $_sql .= "SELECT * FROM tg_photo;";

    $_sql .= "SELECT * FROM tg_article";

    【$_mysqli->multi_query()执行多条SQL语句,执行后返回第一条SQL语句的执行状况(返回1或者0),此时指针指向第一条SQL语句

    $_mysqli->store_result()获取当前指针指向的SQL语句的结果集

    $_mysqli->next_result();将指针下移,指向下一条SQL语句】

    //开始执行多条SQL语句

    if ($_mysqli->multi_query($_sql)) {

    //开始获取第一条SQL语句的结果集

    $_result = $_mysqli->store_result();

    print_r($_result->fetch_array());

    //将结果集指针移到下一个

    $_mysqli->next_result();

    //开始获取第二条SQL语句的结果集

    $_result = $_mysqli->store_result();

    print_r($_result->fetch_array());

    //将结果集指针移到下一个

    $_mysqli->next_result();

    //开始获取第三条SQL语句的结果集

    $_result = $_mysqli->store_result();

    print_r($_result->fetch_array());

    } else {

    echo 'sql语句有误!';

    }

    //5.断开MySQL

    $_mysqli->close();

    ?>

    相关文章

      网友评论

          本文标题:PHP操作mysqli

          本文链接:https://www.haomeiwen.com/subject/fgeuxxtx.html