ホームページ >データベース >mysql チュートリアル >オブジェクト リレーショナル マッピング ORM の欠点は何ですか?

オブジェクト リレーショナル マッピング ORM の欠点は何ですか?

coldplay.xixi
coldplay.xixiオリジナル
2020-07-01 10:24:573463ブラウズ

オブジェクト リレーショナル マッピング ORM の欠点は次のとおりです: 1. 実行効率が低い。リレーショナル データベースの自動マッピングにはシステム パフォーマンスが必要; 2. 柔軟性が十分ではない。複雑なクエリの場合、ORM は複雑なクエリを処理できない; 3.すべてのデータをメモリ オブジェクトに抽出し、すべての属性を永続化すると、より多くのメモリ スペースが消費される可能性が非常に高くなります。

オブジェクト リレーショナル マッピング ORM の欠点は何ですか?

オブジェクト リレーショナル マッピング (オブジェクト リレーショナル マッピング、ORM) は、さまざまなオブジェクト指向プログラミング言語を実装するために使用されるプログラミング テクノロジです。システムデータを入力します。

具体的には、オブジェクト指向言語プログラムのオブジェクトとリレーショナル データベースのデータ間のマッピングは、オブジェクトとデータベース間のマッピングを記述するメタデータを使用して実現されます。実際には、プログラミング言語で使用できる「仮想オブジェクト データベース」を作成します。通常、ミドルウェアの形で存在します。

ORM は 3 つの核となる原則に基づいています。

  • シンプルさ: データを最も基本的な形式でモデル化します。 (永続クラスはテーブルに対応し、クラスの各インスタンスはテーブル内のレコードに対応し、クラスの各属性はテーブルの各フィールドに対応します。)

  • 伝達性: データベース 構造は誰でも理解できる言語で文書化されています。

  • 精度: データ モデルに基づいて正しく標準化された構造を作成します。

ORM には次のような欠点もあります:

1. 実行効率が低い。リレーショナル データベース マッピングの自動化にはシステム パフォーマンスが必要ですが、実行効率は直接記述された SQL ステートメントよりも低くなります。

2. 柔軟性が十分ではなく、複雑なクエリの場合、ORM は対応できません。

3. すべてのデータをメモリ オブジェクトに抽出し、すべての属性を永続化することは非常に可能ですが、これによりより多くのメモリ領域が消費されます。

関連する学習に関する推奨事項: mysql ビデオ チュートリアル

以上がオブジェクト リレーショナル マッピング ORM の欠点は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。