您的位置:

PHP mysqli数据库操作指南

一、mysqli简介

MySQLi是PHP中操作MySQL数据库的扩展库之一,包括了MySQL的所有特性,但是性能更好,更加安全。MYSQLi是面向对象的,与之前版本的MYSQL有很大的不同。

所以在使用MYSQLi之前必须要先了解MYSQLi的基本概念和使用方法。

二、连接MySQLi数据库

在PHP中与MySQLi数据库连接的最基本方法是使用mysqli_connect()函数进行连接。该函数接受4个参数,分别是数据库所在的主机地址、连接的用户名、连接的密码和要连接的数据库名。

    $con = mysqli_connect("localhost", "my_user", "my_password", "my_db");
    if (mysqli_connect_errno()) {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
        exit();
    }

mysqli_connect_errno()是调用获取最近一次与数据库连接失败的错误码;mysqli_connect_error()是获取最近一次连接数据库返回的错误信息。

三、执行MySQLi查询语句

执行查询操作前,需要先通过mysqli_query()函数传入连接对象和SQL语句来查询数据表。

    $sql = "SELECT * FROM my_table";
    $result = mysqli_query($con, $sql);
    while ($row = mysqli_fetch_assoc($result)) {
        echo $row['name'];
    }

mysqli_fetch_assoc()函数会从查询结果中取出一行作为关联数组,如果没有获取到结果则会返回空值(NULL)。

四、插入MySQLi数据

插入数据时需要通过mysqli_query()函数传入连接对象、插入数据的SQL语句,并使用mysqli_affected_rows()函数判断插入结果是否成功。

    $sql = "INSERT INTO my_table (name, age, sex) VALUES ('Tom', 20, 'male')";
    $result = mysqli_query($con, $sql);
    $affected_rows = mysqli_affected_rows($con);
    if($affected_rows > 0){
        echo "Insert success";
    }

五、更新MySQLi数据

更新MySQLi数据时需要使用mysqli_query()函数传入连接对象、更新数据的SQL语句,并使用mysqli_affected_rows()函数判断更新结果是否成功。

    $sql = "UPDATE my_table SET age=21 WHERE id=1";
    $result = mysqli_query($con, $sql);
    $affected_rows = mysqli_affected_rows($con);
    if($affected_rows > 0){
        echo "Update success";
    }

六、删除MySQLi数据

删除数据时需要使用mysqli_query()函数传入连接对象、删除数据的SQL语句,并使用mysqli_affected_rows()函数判断删除结果是否成功。

    $sql = "DELETE FROM my_table WHERE id=1";
    $result = mysqli_query($con, $sql);
    $affected_rows = mysqli_affected_rows($con);
    if($affected_rows > 0){
        echo "Delete success";
    }

七、关闭MySQLi连接

最后,使用mysqli_close()函数关闭MySQLi连接,以免数据库连接占用太多服务器资源。

    mysqli_close($con);

八、总结

以上是MySQLi数据库操作的基本方法,对于数据的查询、插入、更新、删除已经涉及到常见的数据操作方法。不过,具体使用MYSQLi操作数据表时,还需要注意一些细节问题,比如防范SQL注入、数据查询结果集为空的判断、数据提交和回滚等。