Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie einen Anbieter für Entity Framework schreiben, müssen Sie Entity Framework -Befehlsstrukturen in SQL übersetzen, das eine bestimmte Datenbank verstehen kann, z. B. Transact-SQL für SQL Server oder PL/SQL für Oracle. In diesem Abschnitt erfahren Sie, wie eine SQL-Generierungskomponente (für SELECT-Abfragen) für einen Entity Framework -Anbieter entwickelt wird. Informationen zu Einfügungs-, Update- und Löschabfragen finden Sie unter Generierung von Änderungen in SQL.
Um diesen Abschnitt zu verstehen, sollten Sie mit dem Entity Framework - und dem ADO.NET-Anbietermodell vertraut sein. Außerdem sollten Sie Befehlsstrukturen und DbExpression verstehen.
Die Rolle des SQL-Generierungsmoduls
Das SQL-Generierungsmodul eines Entity Framework -Anbieters übersetzt eine angegebene Abfragebefehlsstruktur in eine einzelne SQL SELECT-Anweisung, die für eine SQL:1999-kompatible Datenbank vorgesehen ist. Das generierte SQL sollte so wenige geschachtelte Abfragen wie möglich enthalten. Das SQL-Generierungsmodul sollte die Ausgabeabfrage-Befehlsstruktur nicht vereinfachen. Entity Framework führt dies beispielsweise durch das Eliminieren von Joins und das Reduzieren von aufeinander folgenden Filterknoten aus.
Die DBProviderServices-Klasse ist der Ausgangspunkt für den Zugriff auf die SQL-Generierungsebene zur Umwandlung von Befehlsstrukturen in DbCommands.
In diesem Abschnitt
Generieren von SQL aus Befehlsstrukturen – Best Practices
SQL-Generierung im Beispielanbieter