MySQLi (一)

来源:互联网 发布:迅雷网络 编辑:程序博客网 时间:2024/04/30 08:25

mysqli类

mysqli类的对象主要控制PHP和mysql数据库服务器之间的连接、选择数据库、想mysql服务器发送sql语句设置字符集。

这些都是通过声明构造方法、成员方法、和成员属性完成的。


Mysqli 类中的成员方法

 1)       __construct()    构造方法,用于创建一个新的mysqli对象,也可以建立一个连接。

 2)       Close()  关闭先前打开的连接。

 3)       connection() 打开一个新的连接到mysql数据库服务器。

 4)       get_client_info()   返回客户端版本号。

 5)       get_host_info()  返回一个字符串代表的连接使用类型。

 6)       get_server_info()   返回mysql服务器的版本,如:5.1.33-community-log 。

 7)       get_server_version()返回整数形式的mysql服务器版本。

 8)       kill()  要求服务器结束一个mysql线程。

 9)       multi_query()  执行多个查询语句。

 10)     More_results()  从多查询语句中检查是否有任何更多的查询结果。

 11)     Next_result()  从当前执行的多查询中读取下一个结果。

 12)     Select_db() 为数据库查询选择默认的数据库。

 13)     Set_charset() 设置默认客户端字符集。

 14)     Real_connect() 打开一个连接到mysql数据库服务器。

连接mysql服务器

第一种方式是通过mysqli类的构造方法实例化对象:

class mysqli{

__construct([string host [,string username [,string passwd [,string dbname [,int port [,string socket]]]]]])

执行SQL命令

mysqli类中提供了几种执行SQL命令的方法,其中最常用的是query()方法。

如果在执行SQL命令是发生错误,query()方法会返回FALSE。

query()方法每次调用只能执行一条SQL命令。

如果想一次执行多条命令,就必须使用mysqli对象中的multi_query()方法。


一次执行多条SQL命令

    <?php
   $mysqli = new mysqli("localhost","root","密码","库名");  //连接数据库
   if(mysqli_connect_error()){                                            //检查连接错误
  printf("连接失败:",mysqli_connect_error());
 exit();
  }
 
                 $query = "set names utf8;select current_user();select name from 表";
 
                 if($mysqli->multi_query($query)){                            //执行多条SQL语句
 
                     do{
 
                          if($result = $mysqli->store_result()){             //获取第一个结果集
 
                              while($row = $result->fetch_row()){        //遍历结果集中的每条数据
 
                                   foreach($row  as $data){                     //从每行记录数组中获取每列数据
 
                                           echo $data;                        //输出每列数据
 
                                          }
 
                                       }        
 
                                         $result->close();                   //关闭一个打开的结果集
 
                               }
 
                                   if($mysqli->more_result()){         //判断是否还有更多的结果集
 
                                           }
 
                            }while($mysqli->next_result());          //获取下一个结果集,并继续执行循环
 
                }
 
                  $mysqli->close();                                         //关闭mysqli连接
 
                ?>
  

原创粉丝点击