欢迎访问宙启技术站
智能推送

PHP函数使用:如何使用mysqli_query函数执行MySQL查询操作并返回结果集?

发布时间:2023-06-21 12:38:08

mysqli_query()是一种MySQL PHP扩展,它允许开发人员与数据库服务器进行通信,从而创建和管理数据库连接。 通常用于向MySQL数据库服务器发送查询请求以获取数据或插入、更新或删除数据。下面将介绍mysqli_query()函数的语法和用法。

语法

mysqli_query(connection, query)

参数

- connection:必需。mysql_connect() 函数返回的链接标识符。

- query:必需。查询字符串。

返回值

该函数返回一个对象,包含查询结果的所有行和列。如果查询失败,则返回false。mysqli_fetch_array() 函数用于检索单行数据。而 mysqli_fetch_all() 函数可以一次全部检索所有行的数据。 

使用前提

在使用mysqli_query()函数之前,您需要确保已经成功地建立了MySQL数据库连接,并且已选择了要查询的数据库。

示例

以下是mysqli_query()函数的一个简单示例,查询employees表中的数据,并返回结果集:

<?php

$servername = "localhost";

$username = "username";

$password = "password";

$dbname = "myDB";

//创建连接

$conn = mysqli_connect($servername, $username, $password, $dbname);

//检查连接

if (!$conn) {

    die("Connection failed: " . mysqli_connect_error());

}

$sql = "SELECT id, firstname, lastname FROM employees";

$result = mysqli_query($conn, $sql);

//检查结果集是否存在行

if (mysqli_num_rows($result) > 0) {

    // 输出数据

    while($row = mysqli_fetch_assoc($result)) {

        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";

    }

} else {

    echo "0 结果";

}

mysqli_close($conn);

?>

解释

- 第1-5行:定义连接MySQL服务器的参数,包括主机名,用户名,密码和要查询的数据库名。您可以根据需要更改这些参数。

- 第8行:使用mysqli_connect()函数创建到MySQL服务器的连接。如果连接失败,则使用mysqli_connect_error()函数输出错误消息。在应用程序开发过程中,这是非常重要的调试信息。

- 第14行:创建查询字符串。该字符串中传递给mysqli_query()函数的SQL查询语句。在这种情况下,我们选择employees表中的所有行并检索id,firstname和lastname列。在应用程序开发过程中,您可以更改查询以适应您的特定数据查询需求。

- 第15行:使用mysqli_query()函数向MySQL服务器发送查询请求,并返回结果集。在这种情况下,我们将结果集存储在变量$result中,以便以后检查使用。

- 第18行:使用mysqli_num_rows()函数检查结果集中是否有任何行。如果查询返回零行(即没有找到匹配项),则跳转到第28行输出“No results”消息。

- 第21行:使用mysqli_fetch_assoc()函数检索在结果集中找到的所有行的数据。该函数将结果存储在$row变量中,该变量是一个关联数组,其中索引为“id”,“firstname”和“lastname”的键。

- 第22-24行:使用echo语句输出结果。在本例中,我们输出id,firstname和lastname列以及其他一些简单的HTML字符以改进输出的可读性。

- 第28-30行:如果结果数为0,则输出“No results”消息。

- 第32行:关闭到MySQL服务器的连接。这个步骤是非常重要的,因为它确保在完全完成查询后释放连接和连接池资源。

- 最后,我们可以在Web浏览器中或其他地方执行此PHP代码并查看结果集。 

总结

mysqli_query()函数是连接MySQL服务器和执行查询的一个很好的方式。在实际应用程序中,您通常需要使用其他函数(例如mysqli_fetch_array()和mysqli_fetch_all())来检索结果集中的数据并对其进行进一步处理。在使用mysqli_query()函数时,务必遵循 做法,例如使用PHP的预处理功能和其他数据库技术来保护数据和代码免受SQL注入攻击等安全威胁。