我对 ORM 和 PDO 之间的区别有点困惑?
PDO 是一种 ORM 吗?
根据我的理解,ORM 基本上是一种数据映射,PDO 也为数据库数据提供了抽象。
PDO 和 ORM 是两个完全不同的东西。
PDO 是数据库访问抽象层的特定实现,它使您能够使用跨不同数据库后端(例如 MySQL、PostgreSQL、MS SQL 等)一致的 API 连接、运行 SQL 并从数据库中检索结果。
另一方面,ORM 更专业:它是一个框架,用于将关系表映射到应用程序域对象以及它们之间的关系。这些通常建立在像 PDO 这样的 DAL 之上。
要查看差异,请考虑必须检索对象或记录。使用 PDO,您需要编写 SQL 以在正确的表中选择正确的行,并具有提取该行并将字段映射到 PHP 对象的变量的逻辑。作为用户,您必须处理所有这些。另一方面,对于 ORM,您只需说:通过此 ID 找到对象 X,然后 ORM 会发挥其魔力并为您提供该对象,而无需您自己编写 SQL。