I wish. I have it justified to me as "our SQL is not good" as the reason to use ORMs in my workplace. The result is code that primarily centers around the idea of fetching objects into memory and flushing them back to the database. JOINs are not used, you do lookup chains in Java instead. And if you need to update a field, you fetch the entire object into memory (a SELECT *), update one field and flush the whole thing back to the database. That's what an ORM gets you. A plainly wrong way of thinking about how to manipulate data for developers.
It's not that they don't know SQL. They know SQL. The problem is, the only SQL they know is fetching objects by primary key/some other condition because that's the only thing an ORM does well. The SQL table could very well be a dumb key-value store because that's all that their code treats the SQL database like.
It's not that they don't know SQL. They know SQL. The problem is, the only SQL they know is fetching objects by primary key/some other condition because that's the only thing an ORM does well. The SQL table could very well be a dumb key-value store because that's all that their code treats the SQL database like.