php学习笔记07:mysqli扩展函数(面向过程)

注1:由于php废弃mysql扩展,故不再做本讲座中的mysql扩展笔记.

注2:建议使用pdo面向对象风格.

mysqli扩展(面向过程):

同一老师主讲:

https://www.bilibili.com/video/av30169480/?p=90

https://www.bilibili.com/video/av60515533/?p=162

亦可参看韩顺平mysqli讲座:

https://www.bilibili.com/video/av14530957/?p=3

mysqli函数参考手册

MySQL增强版扩展-php官网参考: https://www.php.net/manual/zh/book.mysqli.php

PHP 5 MySQLi 函数-菜鸟教程参考: https://www.runoob.com/php/php-ref-mysqli.html

--------以下为同一老师主讲mysqli函数(面向对象):https://www.bilibili.com/video/av30169480/?p=90-------

开启mysqli

一般php可能已开启mysqli扩展,如果没有开启,请按如上开启.

常用的mysqli函数

PHP操作mysql

  • 连接认证,设定字符集和选择数据库

  • 新增数据

  • 修改数据

  • 删除数据

执行mysqli_query函数之后,可以执行mysqli_error($conn)查看mysql给出的错误信息(如果有的话).

我们现在故意试试写错sql语句看看效果,如下故意写错delete:

运行,此时受影响的行数返回-1,即代表sql语句出现错误,通过mysqli_error函数我们可以查看mysql给出的错误信息:

我们更正delete语句:

运行,php显示受影响的行数为1,此时并没有错误信息:

我们查看数据库,果然id为12的记录没有了:

  • 查询数据

<?php
$sql="select * from my_student2";
$res=mysqli_query($conn,$sql);

//读取一条数据,且指针下移(下次获取下一条)
//$row=mysqli_fetch_row($res); //返回索引数组(数字0开始的下标),一般不用
//$row=mysqli_fetch_assoc($res);//返回关联数组.以字段名作为数组KEY/键.
//echo mysqli_num_rows($res);//查看结果集行数


/*遍历数组$lists取出全部数据 - 仅演示
$nums = mysqli_num_rows($res);

$lists = array();

for($i=0; $i<$num; $i++){//使用for循环遍历.实际开发不使用这种方式
    $row=mysqli_fetch_assoc($res);
    $lists[]=$row;   //二维数组 
}
echo '<pre>';
var_dump($lists);
*/

//实际开发 - 遍历数组
$lists = array();
while($row=mysqli_fetch_assoc($res)){
    $lists[] = $row;  //二维数组
}
echo '<pre>';
var_dump($lists);

// 释放结果集 
mysqli_free_result($res); 

mysqli_close($con); //关闭连接

注意:在查询数据后,$res不再是布尔值,而是结果集(对象).

mysqli_connect()打开一个到 MySQL 服务器的新的连接。
mysqli_character_set_name()返回数据库连接的默认字符集。
mysqli_close()

关闭先前打开的数据库连接。

mysqli_query()

执行某个针对数据库的查询。

mysqli_affected_rows()

返回前一次 MySQL 操作所影响的记录行数。(-1代表sql语句执行出错)
mysqli_errno()返回最近调用函数的最后一个错误代码。
mysqli_error_list()返回最近调用函数的错误列表。
mysqli_error()返回最近调用函数的最后一个错误描述。

mysqli_fetch_all()

从结果集中取得所有行作为关联数组,或数字数组,或二者兼有。
mysqli_fetch_array()从结果集中取得一行作为关联数组,或数字数组,或二者兼有。

mysqli_fetch_assoc()

从结果集中取得一行作为关联数组。字段名为数组KEY/键
mysqli_fetch_field_direct()从结果集中取得某个单一字段的 meta-data,并作为对象返回。
mysqli_fetch_field()从结果集中取得下一字段,并作为对象返回。
mysqli_fetch_fields()返回结果中代表字段的对象的数组。
mysqli_fetch_lengths()返回结果集中当前行的每个列的长度。
mysqli_fetch_object()从结果集中取得当前行,并作为对象返回。
mysqli_fetch_row()从结果集中取得一行,并作为枚举数组返回。索引数组,数字0开始的数组下标
mysqli_num_rows()返回结果集中行的数量。
mysqli_free_result()释放结果内存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值