Создание SQL
При написании поставщика для Entity Framework необходимо перевести дерево команд Entity Framework на язык SQL, понятный базе данных, например Transact-SQL для SQL Server или PL/SQL для Oracle. В этом разделе описано, как разрабатывать компонент создания кода SQL (для запросов SELECT) для поставщика Entity Framework . Дополнительные сведения о вставке, обновлении и удалении запросов см. в разделе Создание кода SQL для изменения данных.
Для усвоения данного раздела требуется знание Entity Framework и модели поставщика ADO.NET. Также требуется знание деревьев команд и DbExpression.
Роль модуля создания кода SQL
Модуль создания кода SQ поставщика Entity Framework переводит данное дерево команд запроса в одну инструкцию SQL SELECT, предназначенную для базы данных, которая совместима с SQL:1999. В созданном коде SQL должно как можно меньше вложенных запросов. Упрощение дерева команд выходного запроса в модуле создания кода SQL не допускается. Entity Framework может с этой целью, например, удалить соединения и свернуть последовательные узлы фильтра.
Класс DBProviderServices является начальной точкой для доступа к уровню создания кода SQL для преобразования деревьев команд в DbCommands.
В этом разделе
Создание кода SQL из деревьев команд. Рекомендации
Создание кода SQL в образце поставщика