PHP之MySQLi简易操作数据库

目录

1 图解

2 建立连接

3 设置字符集

4 执行SQL语句

5 释放结果集

6 关闭连接


1 图解

MySQLi

 

2 建立连接

第一种方式:先建立连接后选择数据库。

<?php
$mysqli=new mysqli('localhost','root','root');
$mysqli->select_db('database');
?>

第二种方式:建立连接并指定数据库。

<?php
$mysqli=new mysqli('localhost','root','root','database');
?>

第三种方式:建立连接后通过connect来打开数据库。

<?php
$mysqli=new mysqli();
$mysqli->connect('localhost','root','root','database');
?>

建立连接后可以查看有无错误信息

<?php
echo $mysqli->connect_errno;   //错误编号
echo $mysqli->connect_error;   //错误信息
?>

 

php官方MySQLi类说明传送门:https://www.php.net/manual/zh/class.mysqli.php

 

3 设置字符集

建立连接后可以使用set_charset()成员函数进行设置字符集。

<?php
$mysqli->set_charset('utf8');
?>

4 执行SQL语句

跟MySQL客户端类似,PHP要操作数据库,首先把SQL语句写好,然后调用query方法进行操作(query一次只能执行一条SQL)。

例如:查询user表中的所有数据(SELECT * FROM user)。

<?php
$mysqli=new mysqli('localhost','root','root','article');
$mysqli->set_charset('utf8');
$sql="SELECT * FROM user";
$result=$mysqli->query($sql);
print_r($result);
?>

 查询的返回结果为一个对象,打印出来的结果如下,其中num_rows为结果集中的条数。

mysqli_result Object
(
    [current_field] => 0
    [field_count] => 2
    [lengths] => 
    [num_rows] => 1
    [type] => 0
)

php官方mysqli_result类说明传送门:https://www.php.net/manual/zh/class.mysqli-result.php

浪子四方

 

对于结果集的操作

fetch_row():以索引数组的形式返回一条记录。

例如:当结果集中有记录时,以索引数组的形式遍历整个结果集。

 // 注:$result为query()查询后返回的结果
if( $result && $result->num_rows>0){
	while($arr=$result->fetch_row()) { 
		var_dump($arr);
	}
}

fetch_assoc():以关联数组的形式返回一条记录。

例如:当结果集中有记录时,以关联数组的形式遍历整个结果集。

 // 注:$result为query()查询后返回的结果
if( $result && $result->num_rows>0){
	while($arr=$result->fetch_assoc()) { 
		var_dump($arr);
	}
}

5 释放结果集

当使用完查询结果之后,我们可以使用free()成员函数进行释放结果集。

<?php
$mysqli=new mysqli('localhost','root','root','brell');
$mysqli->set_charset('utf8');
$sql="SELECT * FROM user";
$result=$mysqli->query($sql);
$result->free();
?>

6 关闭连接

当操作数据库完毕后记得使用close成员函数关闭数据库连接。

<?php
$mysqli->close();
?>

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值