广

MYSQL

  • MYSQL
  • MSSQL
  • Redis
  • MongoDB
  • oracle数据库
  • 数据管理

    mysql与mysqli的区别与用法说明

    2018-06-08 14:28:09 次阅读 稿源:互联网
    零七网广告
    全网推广平台,软文发布
    也就是说

    mysql每次链接都会打开一个连接的进程而mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销

    有些朋友在编程的时候,使用new mysqli('localhost', usenamer', 'password', 'databasename');总是报错,Fatal error: Class 'mysqli' not found in d:/...
    mysqli类不是php自带的吗?

    不是默认开启的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli编译进去

    mysql是非持继连接函数而mysqli是永远连接函数,也就是说

    mysql每次链接都会打开一个连接的进程而mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销
    有些朋友在编程的时候,使用new mysqli('localhost', usenamer', 'password', 'databasename');总是报错,Fatal error: Class 'mysqli' not found in d:/...
    mysqli类不是php自带的吗?

    不是默认开启的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli编译进去
    mysqli的面向过程的使用:
    代码如下:

    $conn = mysqli_connect('localhost', 'root', '123', 'db_test') or ('error');
    $sql = "select * from db_table";
    $query = mysqli_query($conn,$sql);
    while($row = mysqli_fetch_array($query)){
    echo $row['title'];
    }

    mysqli的面向对象的使用:
    代码如下:

    $conn = mysqli('localhost', 'root', '123', 'db_test');
    $sql = "select * from db_table";
    $query = $conn->query($sql);
    while($row = $query->fetch_array()){
    echo $row['title'];
    }

    mysql_pconnect打开的连接不会关闭(即使调用mysql_close也不会关闭,因为对其无效),
    类似于连接缓冲池,如果下次有来自于同一个机器的同一个用户名
    对同一个数据库的连接,php会自动使用上次已经建立的连接,而不需要再重新建立一个。
    好处:是省去了每次与数据库建立连接的开销,
    坏处:是需要浪费一些内存,占用一些连接,
    所以如果用户访问量大的时候会出现错误,要把mysql的max_connections参数改大一点, 或者使用mysql_connect()就解决问题。

    首先两个函数都是用来处理DB 的。

    首先, mysqli 连接是永久连接,而mysql是非永久连接。什么意思呢? mysql连接每当第二次使用的时候,都会重新打开一个新的进程,而mysqli则只使用同一个进程,这样可以很大程度的减轻服务器端压力。
    其次,mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法。具体查看 http://cn.php.net/mysqli

    应用比较多的地方是 mysqli的事务。
    比如下面的示例:
    代码如下:

    $mysqli = new mysqli('localhost','root','','DB_Lib2Test');
    $mysqli->autocommit(false);//开始事物
    $mysqli->query($sql1);
    $mysqli->query($sql2);
    if(!$mysqli->errno){
    $mysqli->commit();
    echo 'ok';
    }else{
    echo 'err';
    $mysqli->rollback();
    }

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七网广告
    零七网广告
    零七网广告
    零七网广告