1.mysql与mysqli

mysqli是php5提供的新函数库,(i)表示改进,其执行速度更快.当然也更安全

mysql是非持继连接函数而mysqli是永远连接函数。也就是说,mysql每次链接都会打开一个连接的进程而mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销 有些朋友在编程的时候,

用PDO的好处是,PDO支持多种数据库,而MySQLi只支持MySQL,一但你掌握了就你可以随心所欲的使用连接多种数据库。

// PDO object oriented way 面向对象
$pdo = new PDO(“mysql:host=localhost;dbname=database”, ‘username’, ‘password’);

// mysqli, procedural way 过程
$mysqli = mysqli_connect(‘localhost’,‘username’,‘password’,‘database’);

// mysqli, object oriented way 对象
$mysqli = new mysqli(‘localhost’,‘username’,‘password’,‘database’);



安全性 防注入

性能

由于PDO能够支持其它非MySQL的数据库,而MySQLi专门针对MySQL设计的,所以MySQLi相对于PDO性能稍微好一些。

但是PDO和MySQLi都还是没有PHP原生的MySQL扩展快。但是这样性能比较其实意义不太大,因为它们都是相当快了,

如果你的程序性能要求不是特别苛刻话,三者都可以满足你。至于你要选择哪一种就要你根据的实践情况进行权衡。

数据备份

<?php // 备份数据库 $host = "localhost"; $user = "root"; //数据库账号 $password = "root"; //数据库密码 $dbname = "compa"; //数据库名称 header("Content-type:text/html;charset=utf-8"); // 这里的账号、密码、名称都是从页面传过来的 if (!mysql_connect($host, $user, $password)) // 连接mysql数据库 { echo '数据库连接失败,请核对后再试'; exit; } if (!mysql_select_db($dbname)) // 是否存在该数据库 { echo '不存在数据库:' . $dbname . ',请核对后再试'; exit; } mysql_query("set names 'utf8'"); $mysql = "set charset utf8;\r\n"; $q1 = mysql_query("show tables"); while ($t = mysql_fetch_array($q1)) { $table = $t[0]; $q2 = mysql_query("show create table `$table`"); $sql = mysql_fetch_array($q2); $mysql .= $sql['Create Table'] . ";\r\n"; $q3 = mysql_query("select * from `$table`"); while ($data = mysql_fetch_assoc($q3)) { $keys = array_keys($data); $keys = array_map('addslashes', $keys); $keys = join('`,`', $keys); $keys = "`" . $keys . "`"; $vals = array_values($data); $vals = array_map('addslashes', $vals); $vals = join("','", $vals); $vals = "'" . $vals . "'"; $mysql .= "insert into `$table`($keys) values($vals);\r\n"; } } $filename = $dbname . date('Ymjgi') . ".sql"; //存放路径,默认存放到项目最外层 $fp = fopen($filename, 'w'); fputs($fp, $mysql); fclose($fp); echo "数据备份成功";

mysql、mysqli、PDO相关推荐

  1. pdo mysql 和 mysqli_PHP中MySQL、MySQLi和PDO的用法和区别

    设计开发允许PHP应用与MySQL数据库交互的早期扩展.mysql扩展提供了一个面向过程的接口: 并且是针对MySQL4.1.3或更早版本设计的.因此,这个扩展虽然可以与MySQL4.1.3或更新的数 ...

  2. PHP中MySQL、MySQLi和PDO的用法和区别

    MySQL 是 PHP 操作 MySQL 数据库最原始的 Extension.MySQLi 的 i 代表 Improvement ,提供了相对进阶的功能,就 Extension 而言,本身也增加了安全 ...

  3. mysqli mysql pdo_PHP中MySQL、MySQLi和PDO的用法和区别

    PHP的MySQL扩展(优缺点) 设计开发允许PHP应用与MySQL数据库交互的早期扩展.mysql扩展提供了一个面向过程 的接口: 并且是针对MySQL4.1.3或更早版本设计的.因此,这个扩展虽然 ...

  4. wdcp php5.3 pdo_mysql,WDCP常用组件(memcache、mysqli、PDO_MYSQL、mysql innodb、libmcrypt、php zip)的安装方法...

    一般来说WDCP安装之后就可以正常使用了,不过对于一些朋友来说还无法满足,现在收集了有关WDCP常用组件,比如memcache.mysqli.PDO_MYSQL.mysql innodb.libmcr ...

  5. 【转】mysql,mysqli,PDO三种方式连接数据库

    [另外一个参考网址: http://www.cnblogs.com/DeanChopper/p/4646081.html ] [另外一个参考网址: http://www.jb51.net/articl ...

  6. php mysql persistent_PHP API中,MYSQL与MYSQLI的持久连接区别

    很久很久以前,我也是因为工作上的bug,研究了php mysql client的连接驱动mysqlnd 与libmysql之间的区别php与mysql通讯那点事,这次又遇到一件跟他们有联系的事情,my ...

  7. php mysql增修删_PHP mysql PDO增、删、查、改

    1 建立连接<?php $dbh=newPDO('mysql:host=localhost;port=3306; dbname=test',$user,$pass,array( PDO::ATT ...

  8. PHP+MySql+PDO实现简单增加、删除、修改、查询

    最近学习中要使用PHP+MySql实现表单的增加.删除.修改.查询,看了很多简单案例后,写了一个简单的表单,下面请看代码,有错误的地方希望大佬们指教! 数据库名itcast , 表名emp_info ...

  9. php mysql pdo use_PHP连接到mysql的方法--mysqli和PDO

    php连接到mysql数据库,经典的方式就是使用mysql_connect(),具体代码如下: mysql_connect($db_host, $db_user, $db_pass) or die(m ...

最新文章

  1. aes前台加密后台解密
  2. 美国三院院士「迈克尔•乔丹」长文论述:为什么说「人工智能革命」尚未发生...
  3. FMDB使用的数据库的三种形式
  4. PostgreSQL GIN multi-key search 优化
  5. Apache+PHP环境搭建
  6. 如何在virtualbox中对虚拟机截图
  7. linux redis安装使用,linux安装redis
  8. boost helloworlld
  9. the dhc driver package_DHC智商低?不,它用1k阅读,444个好看证明了自己
  10. 【技术体系】前端工程师
  11. 径向误差、偏心误差和薄棱镜误差
  12. 我是如何入门机器学习的呢
  13. 【OR】YALMIP大M法和凸包
  14. (原創) 如何控制TRDB-LTM輸出時某座標的顏色? (SOC) (DE2-70) (TRDB-LTM)
  15. 01 JavaScript的前世今生
  16. ArcGIS与插值(一): 统计与地统计
  17. 微信朋友圈广告怎么做?
  18. 堆排序(小根堆)的简单实现(java)
  19. 从零开始—仿牛客网讨论社区项目(一)
  20. NVR是什么设备?(Network Video Recorder,网络视频监控系统的存储转发部分)硬盘录像机DVR、视频编码器DVS、网络摄像机IPC

热门文章

  1. 录音混音编辑软件-MAGIX Samplitude Pro X6 Suite 17 0.1.21177 x64 WIN
  2. python udp伪造ip_Python扭曲的简单UDP转发器。保留源IP?
  3. 设计模式-Facade模式
  4. 持续学习 (continual learning/ life-long learning)详解
  5. 颗粒离散元软件(PFC)中Python第三方cartopy包配置
  6. iwconfig与iw设置网卡模式
  7. ExtJs6 路由有参无参使用方式
  8. 2023北京理工大学考研介绍
  9. 数据预处理相关Demo(缺失值、均值方差标准化、极差法归一化、主成分分析)
  10. 17款漂亮的 HTML5 网站模板免费下载