• PHP通过mysqli连接mysql数据库


    数据库连接的天龙八步:

    1、连接数据库
    连接:mysqli_connect

    2、成功与否判断
    连接错误号:mysqli_connect_errno
    连接错误信息:mysqli_connect_error
    3、选择数据库
    选择库:mysqli_select_db
    执行错误号:mysqli_errno
    执行错误信息:mysqli_error
    4、设置字符集
    mysqli_set_charset
    5、准备SQL语句
    说明:符合SQL语法的任意语句
    6、执行SQL语句
    执行:mysqli_query
    7、处理数据
    查询时返回查询到数据行数:mysqli_num_rows
    数据操作是影响的行数:mysqli_affected_rows
    mysqli_fetch_row:获取一条数据的索引数组
    mysqli_fetch_assoc:获取一条数据的关联数组
    mysqli_fetch_array:获取一条数据的指定数组,
    类型取决于第二个参数
    mysqli_fetch_all:获取结果集中的所有数据,
    类型取决于第二个参数
    第二个参数:MYSQLI_NUM(索引数组)
    MYSQLI_ASSOC(关联数组)
    MYSQLI_BOTH(索引和关联都有)
    8、释放资源、关闭连接
    释放资源:mysqli_free_result
    关闭连接:mysqli_close

    示例:
    // 1、连接数据库
    $link = @mysqli_connect('localhost','root','123456');
    // 2、成功与否判断
    if (!$link) {
    exit('error('.mysqli_connect_errno().'):'.mysqli_connect_error());
    //die
    }
    // 3、选择数据库
    if (!mysqli_select_db($link,'test')) {
    echo 'error('.mysqli_errno($link).'):'.mysqli_error($link);
    mysqli_close($link);
    die;
    }
    // 4、设置字符集
    mysqli_set_charset($link,'utf8');
    // 5、准备SQL语句
    $sql = 'select * from star where id > 100';
    // 6、执行SQL语句
    $result = mysqli_query($link,$sql);
    if ($result && mysqli_num_rows($result)) {
    // 7、处理数据
    /*
    mysqli_fetch_row:获取一条数据的索引数组
    mysqli_fetch_assoc:获取一条数据的关联数组
    mysqli_fetch_array:获取一条数据的指定数组,
    类型取决于第二个参数
    mysqli_fetch_all:获取结果集中的所有数据,
    类型取决于第二个参数
    第二个参数:MYSQLI_NUM(索引数组)
    MYSQLI_ASSOC(关联数组)
    MYSQLI_BOTH(索引和关联都有)
    var_dump(mysqli_fetch_all($result,MYSQLI_ASSOC));
    */
    while ($row = mysqli_fetch_array($result,MYSQLI_NUM)) {
    var_dump($row);
    }
    } else {

    }
    // 8、释放资源、关闭连接
    mysqli_free_result($result);
    mysqli_close($link);

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
    更多技术文章请搜索千锋PHP,做真实的自己,用良心做教育。
    互联网+时代,时刻要保持学习,携手千锋PHP,Dream It Possible。

  • 相关阅读:
    【草稿】自定义ASP.NET MVC Html辅助方法
    Python安装(64位Win8.1专业版)
    部署WP程序到自己的手机
    C++中vector小学习,顺便查了下<stdio.h>(或<cstdio>)
    关于ENVI5.0菜单栏不能正常显示(win7 x86系统)
    如何让一个精灵跟随触点移动
    GDAL在VS下配置测试
    【docker】修改现有容器的端口
    Django channles线上部署(腾讯云)
    【leafletjs】添加标记、轨迹线与删除标记、轨迹线
  • 原文地址:https://www.cnblogs.com/lhbryant/p/6929275.html
Copyright © 2020-2023  润新知