mysqli和mysql之间的区别


Difference between mysqli and mysql?

可能重复:
MySQLi相对于MySQL 的优势

我正在构建一个大型数据库,想知道哪一个最好用?

为了安全起见,我现在正在清理我的值并转义字符,但我想知道php中这些mysql查询的不同好处是什么?

谢谢。

在旧的MySQL函数上使用MySQLi。"i"代表"改进"。改进列表可以在文档中找到。

首先,您最好在代码和PHP提供的数据库函数之间使用PDO(正如Lior建议的那样(或中间层(由您编码(,这样您就可以轻松地用mysqli或任何您喜欢的东西更改mysql,而无需重新编辑整个代码。

不同之处在于,mysqli有更多的功能(有很多新功能(,而且也是面向对象的。

为什么不使用PDO?除了其他功能外,您还可以从准备好的语句中获益,如果有一天您决定转移到另一个DB,这将是一个明智的决定。

http://php.net/manual/en/book.pdo.php

如果您坚持使用上面提到的选项之一,MySQLi基本上是标准mysql扩展的一种更面向对象的方法。在大多数情况下,它们在功能方面是相同的。如果您正在构建一个基于OOP的应用程序,MySQLi可能是一个更明智、更一致的选择。

从我的角度来看,主要的区别(改进(是mysqli允许您执行多个查询;这反过来又允许您使用out参数或返回结果集执行存储过程(并从中检索结果(。

我同意其他人的观点,使用PDO是一个更好的选择。

对于所有说要使用PDO的人。它只用于准备好的报表吗?因为您可以在没有PDO的情况下在mySQLi中执行准备好的语句。仅供参考。