mysql扩展库mysqli讲解!!!!!

**php

问题引入:当你使用mysql_connect(‘localhost’,’root’,’password’)链接数据库的时候会出现一个警告:

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\liyanhui_tpl\demo1.php on line 3

**
这里写图片描述mysql

备注:mysqli是mysql上发展起来的类库,它的意思是建议使用mysqli或者pdo去链接数据库——未来的主流。mysql确实是太不安全并且太老旧了。因此在这里我简单介绍mysqli类的一些简单操做,步步递进,耐心学习sql

  1. 链接具体操做
    //建立mysqli对象(资源句柄)
    $mysqli = new mysqli(); 数据库

    //链接数据库
    $mysqli->connect(‘localhost’,’root’,’password’); 数组

    //设置字符编码
    $mysqli->set_charset(‘utf-8’); 安全

    //选择数据库
    $mysqli->select_db(‘xiaozheng’); bash

    //关闭数据库
    $mysqli->close(); markdown

    //固然上面链接操做能够简单写成:
    $_mysqli = new mysqli(‘localhost’,’root’,’password’,’test’); 函数

  2. 拓展:介绍四个关于链接数据库错误的函数
    mysqli_connect_errno()函数返回链接数据库返回的错误号。
    Mysqli_connect_error()函数返回链接数据库返回的错误代码
    errno属性返回数据库操做时的错误号。
    error属性返回数据库操做时的错误代码
    好比:
    这里写图片描述

两个函数是操做,两个函数是链接记好就行。

3 . CURL操做
获取数据集的四个函数:每次只能取一条数据学习

fetch_row():索引数组,能够经过echo "$row[0]"来输出数据 

  fetch_assoc():关联数组,能够经过 echo "$row['id']",关联下标来输出 

  fetch_array():即关联又索引数组,上面两种方式均可以输出

  fetch_object():生成对象,只能经过$object->username输出 【注意】

这里写图片描述
掌握了上面四个函数也就能够遍历输出集了

while(!!$row = $data->fetch_assoc()){
    echo "$row['usernaem']";
}
//其余的同样

4:.肯定所选择的行和受影响的行
//当使用查询时,想了解SELECT查询了多少行,可使用num_rows。

echo $_reslut->num_rows;

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

echo $_mysqli->affected_rows;

特别注意的一点是:二者针对的对象不同,num_rows针对的结果集,而affected针对的是mysqli对象

5 : 移动指针的操做和获取字段

$result->field_count();统计多少个字段
    $result->fetch_field();获取第一列的字段名字,若是再次调用该方法的话,指针下移动, 
    会取出第二列的字段名称,使用print_r()打印看看是一个一维数组,指明了使用那张表之类的详细信息, 
    输出字段的话能够用$result->fetch_field()->name;指向name属性
    $result->fetch_fields():获取全部的字段,二维数组输出

    指针移动:$_result->data_seek(int);//数据集合的指针移动
            $_result->field_seek(int)//字段的指针移动

6: //销毁结果集
$_result->free();
但愿对初学者有帮助!!谢谢

下一篇会介绍:多条数据库的操做以及回滚函数?若是没有接触过事务处理的能够看看~~~~

相关文章
相关标签/搜索