mysqli

一、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);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • <?php mysqli类中的方法都有一个面向过程的函数与之对应,而这些面向过程的函数都继承自mysql 例: $...
    浅唱南山忆阅读 992评论 0 4
  • PHP常用函数大全 usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解...
    上街买菜丶迷倒老太阅读 1,381评论 0 20
  • mysqli 操作数据库 从PHP5.0开始可以使用MySQLi,是一种面向对象的技术(以后新加功能都会以对象形式...
    Ayong丶阅读 753评论 0 0
  • php usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解包。 uni...
    思梦PHP阅读 2,001评论 1 24
  • 2016.12.18 51天,7周+2,今天周末,去喝宝儿姐姐小妹妹的满月酒。说实在的,妈妈没啥能吃的,都是浅尝辄...
    蛋汤羹阅读 350评论 0 0