MySQL vs PDO

时间:2009-05-15 03:33:52

标签: mysql pdo

我是PHP的新手,并使用标准的MySQL数据库调用构建了一个中型网站。但是,我最近了解了PDO,我希望从社区中了解是否值得从MySQL切换到PDO。为了安全起见,我一直在使用mysql_real_escape_string

有关网站的信息:
我正在混合使用INSERTSELECT来电。从SELECT次调用返回的数据量不大(使用LIMIT返回的记录不超过30条)。也不会有很多INSERT个。该网站目前尚未上线,因此现在进行更改很容易。

在您的专业意见中,是否值得花时间将网站从MySQL切换到PDO?或者和MySQL一样好吗?或者换句话说,现在切换到PDO的原因是什么?

2 个答案:

答案 0 :(得分:33)

PDO与mysql_ *函数相比具有以下优点:

  • 它是跨数据库,这意味着它是不同关系数据库的相同接口。
  • 它有助于防止SQL注入。
  • 它更清晰(使用面向对象的方法)。

之前已经问过这个问题,你可能想看看答案:

如果您要开始一个新项目,我会严格建议使用PDO或更高级别的库/ ORM。如果你已经有很多没有它编写的代码,那可能就不值得了。

答案 1 :(得分:4)

PDO具有在上面链接的页面上列出的优点:数据库抽象(即您的代码可以在各种版本的DB中移植),如果您使用它准备好它会处理很多常见的安全问题语句功能,它返回结果作为类实例(通过鼓励面向对象的方法本身可以大大改善您的代码)等等。

然而,最好的方法是让您查看一个ORM库,例如Doctrine。考虑到你的项目规模,看起来似乎有些过分,但坦率地说,开始学习最佳实践永远不会太早。 Zend框架的主要开发人员提供的关于如何构建防弹,可维护的数据库驱动应用程序的优秀概述可以在以下位置观看: http://mtadata.s3.amazonaws.com/webcasts/20090724-playdoh.wmv