2012-05-10 14 views
18

私はORMとPDOの違いについて少し混乱していますか?
PDOはORMの一種ですか?ormとpdoの違い

ORMは基本的にデータマッピングの一種であり、PDOはデータベースデータの抽象化も提供します。

答えて

26

PDOとORMは全く異なる2つのものです。

PDOは、データベースアクセス抽象化レイヤーの特定の実装で、さまざまなデータベースバックエンド(たとえばMySQL、PostgreSQL、MS SQLなど)間で一貫性のあるAPIを使用して、SQLに接続し、SQLを実行し、データベースから結果を取得できます。 )

一方、ORMは、リレーショナルテーブルをアプリケーションドメインオブジェクトとそれらの関係にマッピングするためのフレームワークです。これらはしばしばPDOのようなDALの上に構築されます。

違いを確認するには、オブジェクトまたはレコードを取得する必要があります。 PDOでは、右のテーブルを選択するためにSQLを記述し、その行を抽出してフィールドをPHPオブジェクトの変数にマッピングするロジックを持つ必要があります。ユーザーはすべてのことを世話しなければなりません。 一方、ORMを使用すると、次のように簡単に言えます。このIDでオブジェクトXを見つけると、ORMは自分でSQLを記述することなく、その魔法を実行してオブジェクトを与えます。

8

いいえ、別のものです。

PDOあなたは、MySQLで動作するように同じコードを使用できるように、SQLデータベースへの接続のための抽象化層であり、PostgreSQLはなど

ORMは、オブジェクトにマッピングするデータベース・エンティティの概念です。 Doctrineは、データベースに接続するさまざまな方法をサポートするPHP ORMフレームワークの1つです。その1つはPDOです。

関連する問題