使用PDOStatement而不是常规的Mysql有什么区别/优势?
答案 0 :(得分:2)
我不确定“常规MySQL”是什么意思,但我担心你可能意味着字符串连接的查询。因此,使用像PDO这样的框架的最直接优势是使用准备和参数化的查询。这降低了SQL注入的风险(但不一定消除它,所以不要这么认为),同时,根据数据库服务器,可能允许服务器更好地缓存查询执行计划以提高性能。 / p>
在更高的层次上,使用这样的框架背后的想法是将实际的数据访问组件从应用程序逻辑中抽象出来,这总是一个有价值的目标。基本上,不是直接与数据库接口,而是主要与数据访问框架(在这种情况下仍可以使您与数据库实现紧密耦合,因此请注意这一点)进行接口,并让它处理数据库访问。这种方法的主要好处之一是,如果您更改数据库实现(例如从MySQL迁移到PostgreSQL),则无需更改代码。您只需使用后者的PDO实现作为前者的替代品。