mysqli

作者: bo_bo_bo_la | 来源:发表于2017-11-22 22:18 被阅读67次

    一、mysql与mysqli的概念相关:

    1. mysql与mysqli都是php方面的函数集,与mysql数据库关联不大。

    2. 在php5版本之前,一般是用php的mysql函数去驱动mysql数据库的,比如mysql_query()的函数,属于面向过程3、在php5版本以后,增加了mysqli的函数功能,某种意义上讲,它是mysql系统函数的增强版,更稳定更高效更安全,与mysql_query()对应的有mysqli_query(),属于面向对象,用对象的方式操作驱动mysql数据库

    3. mysql_connect()与mysqli_connect()

    • 使用mysqli,可以把数据库名称当作参数传给mysqli_connect()函数,也可以传递给mysqli的构造函数;

    • 如果调用mysqli_query()或mysqli的对象查询query()方法,则连接标识是必需的。

    1. mysql与mysqli的区别:
    • mysql是非持继连接函数,mysql每次链接都会打开一个连接的进程。

    • mysqli是永远连接函数,mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销。mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法。返回记录集类型为array mysql_fetch_array ( resource $result [, int $ result_type ] )有一点很重要必须指出,用 mysql_fetch_array() 并不比用 mysql_fetch_row()慢,而且还提供了明显更多的值。 mysql_fetch_array() 中可选的第二个参数 是一个常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。参数的默认值是 MYSQL_BOTH。如果用了 MYSQL_BOTH,将得到一个同时包含关联和数字索引的数组。用 MYSQL_ASSOC 只得到关联索引(如同 mysql_fetch_assoc()那样 mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组。返回根据从结果集取得的行生成的关联数组,如果没有更多行,则返回 false。),用 MYSQL_NUM 只得到数字索引[]。例如:

        $con = mysqli_connect("localhost","root","","mydb");    
        $select1 = "select * from mysql_table where age > 20";
        $re_select1 = mysqli_query($con, $select1);
        print_r($re_select1);
        $data = mysqli_fetch_all($re_select1,MYSQLI_ASSOC);
        print_r($data);
    
    �结果

    数据库操作关键函数

    * mysqli_connect: 连接数据库
    * mysqli_error: 最后一次SQL动作错误信息
    * mysql_errno(): 函数返回上一个 MySQL 操作中的错误信息的数字编码。
    返回上一个 MySQL 函数的错误号码,如果没有出错则返回 0(零)。
    * mysqli_query: 执行SQL语句,增删改查
    * mysqli_select_db: 选择数据库
    * mysqli_fetch_array(): 从查询结果去1条查询记录
    * mysqli_fetch_all(): 函数从结果集中取得所有行作为关联数组
    * mysqli_close: 关闭数据库

    假设数据库的名称为mydb

    连接数据库

    /**
    *'localhost',  /* The host to connect to 连接MySQL地址 */     
    *'root',      /* The user to connect as 连接MySQL用户名 */     
    *'password',  /* The password to use 连接MySQL密码 */     
    *'mydb');    /* The default database to query 连接数据库名称*/ 
    /
    $connect = mysqli_connect("localhost","root","","mydb");
    

    创建数据表 person

        $create_table = "create table mysql_table(id int NOT NULL AUTO_INCREMENT,PRIMARY KEY(id),name varchar(15),age int)";
        mysqli_query($con,$create_table);
    

    插入数据

        $insert1 = "insert into mysql_table (`name`, `age`) values('yyy',90)";
        mysqli_query($con,$insert1);
    

    查询数据

        $select1 = "select * from mysql_table where age > 20";
        $re_select1 = mysqli_query($con, $select1);
        print_r($re_select1);
    

    关闭数据

    mysqli_close($con);
    

    相关文章

      网友评论

        本文标题:mysqli

        本文链接:https://www.haomeiwen.com/subject/pczovxtx.html