一、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注入、数据查询结果集为空的判断、数据提交和回滚等。