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

数据库交互:PHP中的常用MySQL函数

发布时间:2023-06-30 08:32:53

在PHP中,与MySQL数据库交互时可以使用许多常用的MySQL函数。这些函数包括:

1. mysqli_connect():连接到MySQL数据库。

2. mysqli_query():执行SQL语句。此函数可以用于执行查询、插入、更新或删除操作。

3. mysqli_fetch_array():从查询结果中获取一行数据,并以数组的形式存储。

4. mysqli_num_rows():获取查询结果中的行数。

5. mysqli_insert_id():获取最后插入行的ID。

6. mysqli_affected_rows():获取最近执行的INSERT、UPDATE或DELETE语句所影响的行数。

7. mysqli_real_escape_string():对字符串中的特殊字符进行转义处理,以防止SQL注入攻击。

8. mysqli_close():关闭与MySQL数据库的连接。

以上是一些常用的MySQL函数,接下来我们将介绍如何使用这些函数与MySQL数据库进行交互的具体示例。

首先,我们需要使用mysqli_connect()函数连接到MySQL数据库。此函数将返回一个与数据库的连接对象。示例如下:

$servername = "localhost";
$username = "root";
$password = "123456";
$dbname = "mydatabase";

$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}

接着,我们可以使用mysqli_query()函数执行SQL语句。例如,下面的示例执行了一个查询操作,并将查询结果存储在名为$result的变量中:

$sql = "SELECT * FROM mytable";
$result = mysqli_query($conn, $sql);

然后,我们可以使用mysqli_fetch_array()函数从查询结果中获取数据行。下面的示例展示了如何使用该函数逐行获取查询结果中的数据:

while ($row = mysqli_fetch_array($result)) {
    echo "ID: " . $row["id"] . ", Name: " . $row["name"] . "<br>";
}

在上述代码中,$row是一个数组,包含了从查询结果中获取的每一行的数据。通过指定列名来访问相应的数据。

要获取查询结果的行数,可以使用mysqli_num_rows()函数。示例如下:

$num_rows = mysqli_num_rows($result);
echo "查询结果共有 " . $num_rows . " 行数据。";

对于执行INSERT语句后,如果需要获取最后插入行的ID,可以使用mysqli_insert_id()函数。示例如下:

$sql = "INSERT INTO mytable (name) VALUES ('John')";
if (mysqli_query($conn, $sql)) {
    $last_id = mysqli_insert_id($conn);
    echo "新记录插入成功,ID 是: " . $last_id;
} else {
    echo "错误: " . $sql . "<br>" . mysqli_error($conn);
}

对于执行INSERT、UPDATE或DELETE语句后,如果需要获取受影响的行数,可以使用mysqli_affected_rows()函数。示例如下:

$sql = "DELETE FROM mytable WHERE id=1";
if (mysqli_query($conn, $sql)) {
    $affected_rows = mysqli_affected_rows($conn);
    echo "删除成功,受影响的行数是: " . $affected_rows;
} else {
    echo "错误: " . $sql . "<br>" . mysqli_error($conn);
}

最后,使用完数据库后应使用mysqli_close()函数关闭连接。示例如下:

mysqli_close($conn);

以上是一些常用的MySQL函数的示例。在实际的PHP与MySQL数据库交互中,这些函数可以帮助我们连接数据库、执行操作并获取结果,从而实现对数据库的增删改查操作。