
上篇文章中讲到了PHP通过mysqli_connect() 函数可以去连接MySQL数据库,其中该函数有一个参数是对应数据库的名称,这个参数是可选参数,是可以省略的。如果将这个参数省略的话还需要在后面指定一个默认的数据库,PHP中就可以通过mysqli_select_db() 函数来指定一个默认数据库。那接下来我们一起来看看这个函数的用法吧。
mysqli_select_db()函数
该函数的语法格式也是要分两种情况,一种是面向对象的写法,其语法格式如下:
mysqli::select_db(string $dbname)
其中$dbname表示的就是指定的数据库名称,另一种是面向过程的写法,其语法格式如下:
mysqli_select_db(mysqli $link, string $dbname)
其中需要注意的是:
$dbname还是表示为指定的数据库名称,$link表示为通过 mysqli_connect() 函数返回的数据库连接。
函数若是执行成功的话,返回结果是true,函数执行失败,返回结果是flase。
接下来我们通过示例来看一下怎样通过mysqli_select_db() 函数来选择数据库,示例如下:
<?php
$host = 'localhost';
$username = 'root';
$password = 'root';
$dbname = 'test';
$mysql = new Mysqli($host, $username, $password);
if($mysql -> connect_errno){
die('数据库连接失败:'.$mysql->connect_errno);
}else{
$mysql -> select_db($dbname); // 选择名为 test 的数据库
$sql = 'select name,sex,age from user'; // SQL 语句
$result = $mysql -> query($sql); // 执行上面的 SQL 语句
$data = $result -> fetch_all();
$mysql -> close();
}
echo '<pre>';
print_r($data);
?>上述实例就是通过mysqli_select_db() 函数函数选择了一个名为“test”的数据库,输出结果如下:

上述示例中用的是面向对象的写法,接下来我们看一下,面向过程的写法是什么样的,示例如下:
<?php
$host = 'localhost';
$username = 'root';
$password = 'root';
$dbname = 'test';
$link = @mysqli_connect($host, $username, $password);
if($link){
mysqli_select_db($link, $dbname); // 选择名为 test 的数据库
$sql = 'select name,sex,age from user'; // SQL 语句
$result = mysqli_query($link, $sql); // 执行 SQL 语句,并返回结果
$data = mysqli_fetch_all($result); // 从结果集中获取所有数据
mysqli_close($link);
}else{
echo '数据库连接失败!';
}
echo '<pre>';
print_r($data);
?>上述示例中,两个写入方法的差别并不大,输出的结果也是相同的。由此我们便通过mysqli_select_db() 函数来指定一个默认数据库。那接下来我们来看一下mysqli_query() 函数,它是做什么的又是怎样使用的呢?
mysqli_query() 函数
在我们上述的实例中,已经完成了指定选择一个数据库,那接下来就可以对所选数据库中的数据表进行查询、更改以及删除等操作。完成这些操作就需要通过mysqli_query() 函数了,该函数的语法格式如下:
mysqli::query( string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )
这是面向对象的写法,其中需要注意的是:
$query表示要执行的 SQL 语句;$resultmode是可选参数,用来修改函数的行为。
下面是面向过程的语法格式写法,示例如下:
mysqli_query( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )
其中需要注意的是:
$link表示由 mysqli_connect() 函数返回的数据库连接;$query表示要执行的 SQL 语句;$resultmode是可选参数,用来修改函数的行为。
接下来我们通过示例来看一下mysqli_query() 函数的使用,示例如下:
在开始前,我们先在数据表中添加一些数据用来进行示例
mysql> select * from user;
+----+--------+------+------+
| id | name | age | sex |
+----+--------+------+------+
| 1 | 壹壹 | 21 | 男 |
| 2 | 贰贰 | 22 | 男 |
| 3 | 叁叁 | 23 | 女 |
| 4 | 肆肆 | 24 | 女 |
+----+--------+------+------+
4 rows in set (0.00 sec)
首先我们先来看一下面向对象的写法,示例如下:
<?php
$host = 'localhost';
$username = 'root';
$password = 'root';
$dbname = 'test';
$mysql = new Mysqli($host, $username, $password, $dbname);
if($mysql -> connect_errno){
die('数据库连接失败:'.$mysql->connect_errno);
}else{
$mysql -> set_charset('UTF-8'); // 设置数据库字符集
$sql = 'select name,sex,age from user'; // SQL 语句
$result = $mysql -> query($sql); // 执行上面的 SQL 语句
$data = $result -> fetch_all();
$mysql -> close();
}
echo '<pre>';
print_r($data);
?>输出结果:

上述是面向对象的写法,面向过程的写法如下所示:
<?php
$host = 'localhost';
$username = 'root';
$password = 'root';
$dbname = 'test';
$link = @mysqli_connect($host, $username, $password, $dbname);
if($link){
$sql = 'select name,sex,age from user'; // SQL 语句
$result = mysqli_query($link, $sql); // 执行 SQL 语句,并返回结果
$data = mysqli_fetch_all($result); // 从结果集中获取所有数据
mysqli_close($link);
}else{
echo '数据库连接失败!';
}
echo '<pre>';
print_r($data);
?>输出结果与上述示例中输出结果相同,由此我们便完成了通过mysqli_query() 函数对数据库的查询。
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。
-
抖音网页版官方入口 抖音网页版在线观看官网 时间:2026-01-08 -
GitLab、Git、Github、Gitee四者的区别 时间:2026-01-08 -
顺磁性和逆磁性的区别 顺磁性和逆磁性的判断方法 时间:2026-01-08 -
顺磁性是什么意思 顺磁性材料有哪些 时间:2026-01-08 -
usim卡是什么意思 usim卡和sim卡的区别 时间:2026-01-08 -
Web前端四大渲染模式SSR、CSR、ISR、SSG的定义和区别 时间:2026-01-08
今日更新
-
qq朋友网登录入口-qq朋友网网页版一键登录
阅读:18
-
刘梗宏女孩是什么梗?揭秘网络爆火健身主播的魔性口号与粉丝狂欢现象,看完秒懂!
阅读:18
-
啵乐漫画app最新版本下载-啵乐漫画官方安装包免费下载
阅读:18
-
Freeok免费追剧app下载安装-Freeok免费追剧软件官方版本
阅读:18
-
哔哩哔哩漫画网页版官方入口-哔哩哔哩漫画官网一键直达
阅读:18
-
七夕漫画官方下载入口安卓最新版-七夕漫画官方下载入口免费安装包
阅读:18
-
夸克网页版入口-夸克浏览器2026最新网页版登录
阅读:18
-
刘国梁不懂球是什么梗?揭秘国乒教练爆笑名场面由来
阅读:18
-
1-75级抖音刷多少-抖音1-75级价格表
阅读:18
-
漫蛙漫画网安卓版下载-漫蛙漫画官方最新版本安装入口
阅读:18










