• 前端PHP入门-033-连接数据库-天龙八步


    php检查MySQL的支持是否开启?

    若没有看到mysqli扩展在windows服务器下,打开php.ini文件,将php_mysqli.dll打开即可!

    注意:

    从PHP7开始默认不再支持mysql扩展,即不再支持mysql_*系列函数。请使用mysqli连接数据库。

    mysqli即支持php5也支持php7。

    数据库连接天龙八步

    第一步: 连接数据库服务器

    类型 说明
    函数 mysqli_connect
    功能 连接到mysql数据库服务器
    参数1 主机
    参数2 数据库服务器登陆名
    参数3 密码
    参数4 数据库的名称
    参数5 数据库服务器端口不填默认3306

    若参数4,数据库名称在此步已填并择,不需要执行第三步。

    第二步: 判断错误

    类型 说明
    函数 mysqli_errno
    功能 返回连接错误号,无错误返回0
    参数1 传入mysqli_connect返回的资源
    类型 说明
    函数 mysqli_error
    功能 返回连接错误字符串
    参数1 传入mysqli_connect返回的资源

    第三步: 选择数据库

    类型 说明
    函数 mysqli_select_db
    功能 选择本连接中的数据库
    参数1 传入mysqli_connect返回的资源
    参数2 需要连接的数据库名

    若在第一步已填数据库,不需要更换成其他数据库,则不需要执行第三步。

    第四步: 设置字符集

    类型 说明
    函数 mysqli_set_charset
    功能 设置与mysql服力器连接,结果,校验字符集
    参数1 传入mysqli_connect返回的资源
    参数2 字符集类型

    第五步: 准备SQL语句

    其实就是一个SQL语句的字符串。

    例如:

    sql="insertintouser(username,password)values(username','$password')";

    我们通常要把变量赋值在SQL语句中使用。可是变量或者SQL语句出错了,非常不好排查。

    我们根据实际工作经验增加了这一步。

    如果在执行此步的时候报错了,我们可以把SQL语句打印出来,粘贴到phpMyAdmin或者相关工具中。

    排错时,如果执行成功就说明不是SQL语句的问题。如果执行失败,请仔细检查SQL语句。

    第六步: 发送SQL语句

    类型 说明
    函数 mysqli_query
    功能 发送SQL语句
    参数1 传入mysqli_connect返回的资源
    参数2 传入发送的SQL语句

    SQL语句准备完成,需要通过mysqli_query将SQL语句发送给MySQL服务器。

    MySQL服务器会执行发送过来的SQL语句进行执行。

    第七步: 判断是否执行正常或者遍历数据

    读取

    第6步中,发送的是select类别的语句,通常需要将结果输出显示出来。就需要用到遍历显示数据的函数。

    类型 说明
    函数 mysqli_fetch_array
    功能 得到result结果集中的数据,返回数组进行遍历
    参数1 传入查询出来的结果变量
    参数2 传入MYSQLI_NUM返回索引数组,MYSQLI_ASSOC返回关联数组,MYSQLI_BOTH返回索引和关联
    类型 说明
    函数 mysqli_fetch_assoc
    功能 得到result结果集中的数据,返回关联数组进行便利
    参数1 传入查询出来的结果变量
    类型 说明
    函数 mysqli_fetch_row
    功能 得到result结果集中的数据,返回索引数组进行便利
    参数1 传入查询出来的结果变量
    类型 说明
    函数 mysqli_fetch_object
    功能 得到result结果集中的数据,返回对象进行遍历
    参数1 传入查询出来的结果变量
    类型 说明
    函数 mysqli_num_rows
    功能 返回查询出来的结果总数
    参数1 传入查询出来的结果变量
    类型 说明
    函数 mysqli_num_rows
    功能 返回查询出来的结果总数
    参数1 传入查询出来的结果变量
    实际工作中用得非常少,了解

    写入

    第6步中,如果发送的是insert的语句,通常需要得到是否执行成功,或者同时拿到自增的ID。

    类型 说明
    函数 mysqli_fetch_field
    功能 遍历数据行
    参数1 传入查询出来的结果变量

    修改和删除

    第6步中,如果发送的是update和delete类别的语句。只需要判断是否执行成功即可。

    我们将这些常用函数列出数据表给给大家查看。

    第八步: 关闭数据库

    类型 说明
    函数 mysqli_close
    功能 关闭数据库连接
    参数1 传入mysqli_connect返回的资源

    数据库连接是一个资源类型。我们在之前的章节中讲解资源类型的时候跟大家说过。凡是涉及到数资源类型的有打开就有关闭。这样能够保证PHP更高效的处理和回收资源。

    因此,数据库连接成功后,不需要使用的时候。我们可以关闭这个连接。

    其他:显示服务器信息函数

    类型 说明
    函数 mysqli_get_server_info
    功能 返回服务器信息
    参数1 传入mysqli_connect返回的资源
    类型 说明
    函数 mysqli_get_server_version
    功能 返回服务器版本
    参数1 传入mysqli_connect返回的资源

    注意:PDO的连接方式才是王道
    mysqli只学过程化的方法即可。在面向对象阶段实际工作中完全抛弃了mysqli的对象用法,而是使用的是PDO对象连接数据库的方式。





  • 相关阅读:
    【剑指offer】推断二叉树平衡
    14.怎样自学Struts2之Struts2类型转换[视频]
    【JS】怎样同一时候处理多个window.onload事件
    Template-Layui:Layui
    网站模板-AdminLTE:AdminLTE
    Template-网站模板:目录
    Template-网站模板:百科
    架构-层-层模型:七层模型
    建筑学-建筑结构类型:建筑结构类型
    架构-分层体系结构:分层体系结构
  • 原文地址:https://www.cnblogs.com/pangxiansheng/p/89c68a04e147332526c8001bcf249d81.html
Copyright © 2020-2023  润新知