Якщо ви знаєте, що ви робите, ви можете ефективно використовувати ORM для заміни більшої частини вашого типу CRUD. Однак вони не є настільки ефективними для складних речей, вони важко піддаються налагодженню (ви знаєте, що продуктивність є однією з найважливіших частин дизайну баз даних, а не емуляція об'єктів), і вони прямо жахливі та небезпечні для рук того, хто не робить не розумію чи пишу SQL самостійно.
Я також хочу зазначити, що складну звітність не просто зробити ефективно з ORM. І далі, якщо ви не навчитеся простому SQL у легких грубих речах, як ви коли-небудь дістанетесь до того, коли зможете написати складний SQL для звітування? Я ніколи не працював у додатку, який не мав потреби в звіті та часто досить складний.
Також ORM здебільшого не корисні для процесів BI або ETL. Вони також не корисні для запитів адміністратора бази даних або для пошуку інформації в таблицях аудиту та скасування певного набору змін у базі даних. Є багато речей, які все ще найбільш ефективно робляться з SQL. Додаток, який запитує базу даних, є невеликою частиною того, що потрібно для запиту в середовищі Enterprise.
Я також бачу багато запитань про те, як зробити щось за допомогою ORM, який плакат уже знає, як зробити в SQL. Приємно вивчати нові речі, але коли вони спричиняють додатковий час і зусилля, не маючи реального виграшу над початковим методом (а часто й реальною втратою продуктивності), чому ти їх використовуєш, крім того, що вони "модні" зараз.