PDO是实现mysqli还是mysql
Posted
技术标签:
【中文标题】PDO是实现mysqli还是mysql【英文标题】:Does PDO implements mysqli or mysql 【发布时间】:2013-04-18 20:00:53 【问题描述】:我正在使用 PDO,我收到了这条消息,但据我发现,我认为 PDO 实际上实现了 mysqli。
您正在使用 php 已弃用的 'mysql' 扩展,该扩展无法使用 处理多个查询。 一些存储例程的执行 可能会失败!请使用改进的“mysqli”扩展名以避免任何 问题。
那我为什么会收到这条消息?
【问题讨论】:
是的 mysql_* api 已被弃用,您必须使用新的 api 来连接数据库,如 pdo 或 mysqli @ArunKillu 所以如果我使用 pdo 就不需要 mysqli 了吧? 是的。PDO
实现 mysqli
而不是 mysql
。只需查看最新版本即可。
我想了解更多有关 PDO 版本的详细信息以及您的设置中的其他内容是否可以在没有 PDO 的情况下进行连接。
【参考方案1】:
这几乎就像问DOMDocument
和SimpleXML
之间有什么区别,或者php
和python
之间有什么区别。它们是不同的库,尽管它们都用于连接 MySQL 数据库服务器。
PHP 已经完成quite a nice job of cataloging the differences
【讨论】:
【参考方案2】:Mysql 不支持一次运行多个查询。 Mysql 也不支持prepared statement。因为你必须使用 Mysqli,它支持两者。
【讨论】:
php_mysql
也不支持存储过程。
@user2308038 在您的服务器上安装mysqli
扩展并使用本教程php.net/manual/en/book.mysqli.php【参考方案3】:
之前有很多关于这个话题的讨论。你最好在互联网上搜索(即使只在 *** 中)。
喜欢:
What is difference between mysql,mysqli and pdo?
Difference between mysqli and mysql?
你需要做更多的研究。批判性地思考并成为一名程序员。 ;)
【讨论】:
我不是在问它们之间的区别。我在问为什么使用 PDO 会提示该消息,因为我发现 PDO 实际上实现了 mysqli。 那么,第一个链接会更适合你。【参考方案4】:我以为PDO实际上实现了mysqli。
很好的问题,但错误。
PDO 实现了接口,以便您可以使用所有数据库系统。因此,它无法实现mysqli
中的某些功能,因为它们需要一些尚未为 SQLite 模拟的特殊功能!当您比较 PDO 和 pgsql_
API 时,您会发现类似的问题。
【讨论】:
以上是关于PDO是实现mysqli还是mysql的主要内容,如果未能解决你的问题,请参考以下文章