Mysqli的使用

一.mysqli扩展的介绍

1.mysqli扩展和mysql扩展都可以完成对数据库的操作

2.mysqli是mysql的升级版

3.mysqli支持面向对象,也支持面向过程;mysql扩展只支持面向过程,从而mysql扩展到目前为止已经被弃用

4.使用mysqli的扩展前,需要引入一个php_mysqli.dll,该文件在php的安装目录,在 ~/php/ext/php_mysqli.dll。

二.mysqli扩展的原理图

三.如何使用

(1)DQL

 1 <?php 
 2     header('content-type:text/html;charset=utf8');
 3     /*
 4         参数名就不多说了应该都能看懂
 5     */
 6     $mySQLi=new mySQLi('localhost','root','root','itbull',3306);
 7     //判断是否连接成功 没有错误返回0 有错误返回错误信息
 8     if($mySQLi->connect_errno){
 9         die('连接错误,错误信息是:'.$mySQLi->connect_error);
10     }else{
11         echo '连接成功';
12     }
13     //设置字符集
14     $mySQLi->set_charset('utf8');
15     //拼接sql语句
16     $sql="SELECT * FROM `user3`";
17     //执行sql语句
18     $res=$mySQLi->query($sql);
19     /*echo '<pre>';
20     var_dump($res);*/
21     //显示数据的时候用$res来循环取出
22     while($row=$res->fetch_assoc()){
23         echo '<pre>';
24         var_dump($row);
25     }
26     //关闭相关资源 不手动关闭 系统也会自动关闭
27     //释放结果集
28     $res->free();
29     //关闭连接
30     $mySQLi->close();
31 
32 
33 
34  ?>

 

(2)DML

 1 <?php 
 2 
 3     header('content-type:text/html;charset=utf8');
 4     /*
 5         参数名就不多说了应该都能看懂
 6     */
 7     $mySQLi=new mySQLi('localhost','root','root','itbull',3306);
 8     //判断是否连接成功 没有错误返回0 有错误返回错误信息
 9     if($mySQLi->connect_errno){
10         die('连接错误,错误信息是:'.$mySQLi->connect_error);
11     }else{
12         echo '连接成功','<br>';
13     }
14     //设置字符集
15     $mySQLi->set_charset('utf8');
16 
17     $sql="INSERT INTO `user3` VALUES(null,'王五',md5('456'),'ww@sohu.com','2017-10-1')";
18 
19     $sql="UPDATE `user3` SET name='王五五' WHERE id=3";
20 
21     $sql="DELETE FROM `user3` WHERE id=3";
22     //dml语句 成功返回true 失败返回false
23     if($mySQLi->query($sql)){
24         echo '执行成功','<br>';
25     }else{
26         echo "执行失败,sql语句是:".$sql,'<br>';
27         echo "失败的原因是:".$mySQLi->error,'<br>';
28     }
    
1 //判断dml语句是否影响了表
2     if($mySQLi->affected_rows>0){
3         echo '<br> 改变了表';
4     }else{
5         echo '<br> 表没有改变';
6     }
7 
8     //获取刚刚得到的id
9     echo "<br> id=".$mySQLi->insert_id;

 

 

(3)从mysql_result中取出数据的方式有四种,推荐使用第一种,$res->data_seek(0)是将结果指向为0

 1 while($row=$res->fetch_assoc()){
 2         echo '<pre>';
 3         var_dump($row);
 4     }
 5 
 6     $res->data_seek(0);//结果指向设置为0
 7     while($row=$res->fetch_row()){
 8         echo '<pre>';
 9         var_dump($row);
10     }
11 
12     $res->data_seek(0);
13     while($row=$res->fetch_array()){
14         echo '<pre>';
15         var_dump($row);
16     }
17 
18     $res->data_seek(0);
19     while($row=$res->fetch_object()){
20         echo '<pre>';
21         var_dump($row);
22         echo '电子邮件:'.$row->email;
23     }

 

 

转载于:https://www.cnblogs.com/phpers/p/7909774.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值