2

EntitySQLクエリを実行するためのEntityConnection、EntityCommandsの使用に関する記事を読みました。しかし、なぜエンティティSQLを使用しているのか理解できませんでした。データベースでCRUD操作を処理するためにクラスとオブジェクトを直接使用しないのはなぜですか?

または、SQLクエリを実行する場合は、なぜEntity Sqlを使用しているのか、直接Ado.netを使用していないのですか?

パフォーマンスの違いなどはありますか?私はすでにページhttp://msdn.microsoft.com/en-us/library/bb738573.aspxを確認しました。しかし、もっと簡単な方法で答えたいと思います。答えてくれませんか?

ありがとう

4

2 に答える 2

3

データベースでCRUD操作を処理するためにクラスとオブジェクトを直接使用しないのはなぜですか?

これは、ほとんどすべての操作の方法です(そうあるべきです)。ただし、データベースに直接かつ正確にアクセスする必要がある場合もあります。

SQLクエリを実行したい場合は、なぜEntity Sqlを使用しているのですか、直接Ado.netを使用していないのですか?

E-SQLでは、(行ではなく)エンティティを引き続き使用できます。これははるかに簡単で強力です。たとえば、継承について考えてみましょう。

E-SQLも実際のデータベースから独立していると想定されています。つまり、Oracleなどでも同じです。これについてはまだ経験がありません。

パフォーマンスの違いなどはありますか?

はい、パフォーマンスを向上させるために使用できます。しかし、自動的ではありません。

于 2012-08-17T06:45:04.073 に答える
3

主な違い

  • SQL は、ストレージ (リレーショナル) オブジェクト - テーブル / 行で動作するデータベース依存のクエリ言語です。
  • ESQL は、概念 (EDMX) オブジェクト (エンティティ) で動作するデータベースに依存しないクエリ言語です。

ESQL は LINQ より前に作成されました。一部のシナリオでは、ESQL は LINQ よりも多くの機能を提供します。

于 2012-08-17T06:46:43.830 に答える