Blogger Information
Blog 51
fans 3
comment 1
visits 36084
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
mysqli_connect() mysqli_query()—2018年4月24日11时56分
Gee的博客
Original
990 people have browsed it

配置:

实例

<?php
/**
 * 数据库参数
 */

//1.创建连接参数
define('DB_HOST', '127.0.0.1'); //mac/Linux: localhost
define('DB_USER', 'root');
define('DB_PASS', 'root');
define('DB_NAME', 'php');
define('DB_CHAR', 'utf8'); // 没有横杠

运行实例 »

点击 "运行实例" 按钮查看在线实例

数据库连接:

实例

<?php
/**
 * 创建数据库连接
 */

//1.创建连接参数
require 'mysqli_config.php';

//2.调用连接函数返回连接对象
$db = mysqli_connect(DB_HOST, DB_USER, DB_PASS);

//3.判断是否连接成功
if (mysqli_connect_errno($db)) {
    exit('连接失败'.mysqli_connect_error($db));
}
//echo '<h1>连接成功</h1>';

//4.选择默认的数据库
mysqli_select_db($db,DB_NAME);

//5.设置客户端默认字符编码集
mysqli_set_charset($db,DB_CHAR);

运行实例 »

点击 "运行实例" 按钮查看在线实例

数据库查询:

实例

<?php
/**
 * mysqli_query($db, $sql)
 * 1. select:查询,读操作,返回就是一个结果集
 * 2. insert/update/delete:写操作,返回是受影响的记录数量
 *  查询:广义:查询、新增、更新、删除 (增删改查CURD)
 *        狭义:查询 select,读操作
 */

//1.连接数据库
require 'mysqli_connect.php';

//2.执行查询
$sql = "SELECT * FROM staff;";

if ($res = mysqli_query($db, $sql)) {
    while($row = mysqli_fetch_array($res, MYSQLI_ASSOC)) {
        var_export($row); print '<hr>';
    }
} else {
    exit('查询失败'.mysqli_errno($db).':'.mysqli_error($db));
}

//3.释放结果集(仅针对查询操作,读操作)
mysqli_free_result($res);

//4.关闭数据库的连接
mysqli_close($db);

运行实例 »

点击 "运行实例" 按钮查看在线实例

多个查询:

实例

<?php
/**
 * 多语句执行和多结果集处理技术
 */

//1.连接数据库
require 'mysqli_connect.php';

//2.准备多条查询语句,每条语句之间必须要用字符串进行连接
//任务1:按性别统计工资的平均数
$sql = "SELECT sex,ROUND(AVG(salary),2) FROM staff GROUP BY sex;";
//任务2:查询年龄大于50的员工信息
$sql .= "SELECT name,age FROM staff WHERE age>50;";
//任务3:查询工资小于5000的员工信息
$sql .= "SELECT name,salary FROM staff WHERE salary<5000;";

//3.执行多条select语句的查询:mysqli_multi_query(), mysqli_query()
$num = 1; //统计查询结果集的数量
if (mysqli_multi_query($db, $sql)) {
    echo '第'.$num.'个结果子集中的数据是:<br>';
    //如果获取到了结果子集,就直接遍历它
    while ($result = mysqli_store_result($db)) {
        if (mysqli_num_rows($result) > 0) {
            while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
                print_r($row); echo '<br>';
            }

            //释放当前结果子集
            mysqli_free_result($result);
        } else {
            echo '当前结果集中没有满足条件的数据啦';
        }

        //判断当前的结果集中,是否还有结果子集
        if (mysqli_more_results($db)) {
            $num++;
            echo '<hr>第'.$num.'个结果子集中的数据是:<br>';
            //将结果集指针下移到下一个结果子集
            mysqli_next_result($db);
        }
    }
} else {
    exit(mysqli_errno($db).':'.mysqli_error($db));
}

//4.关闭数据库的连接
mysqli_close($db);

运行实例 »

点击 "运行实例" 按钮查看在线实例

总结:

  1. 将配置单独写在一个文件中,方便日后修改迁移

  2. 数据库操作基本步骤:

            1.连接数据库

            2.准备sql语句

            3.执行语句

            4.关闭数据库连接

3.记得释放结果集

mysqli_free_result($result);

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post