ORM vs Query Builders vs Raw SQL

imthedeveloper

ImTheDeveloper

Posted on December 17, 2019

ORM vs Query Builders vs Raw SQL

I've recently been working on an dated side project which is built in node.js coupled with an ORM querying against Postgres.

Since picking this back up, I'm starting to reach the point where ORM is getting in the way and I'm now reaching back to plain SQL statements against my DB.

This got me thinking, do I really need an ORM anymore? What are the benefits I aimed to achieve at the outset of the project and do they still seem relevant now?

I took some time to see how the sentiment looked on google and found a few (some quite recent) blog posts suggesting ORMs are to be avoided, ditch the ORMs and get back to basics:

https://blog.logrocket.com/why-you-should-avoid-orms-with-examples-in-node-js-e0baab73fa5/

https://eli.thegreenplace.net/2019/to-orm-or-not-to-orm/

Since I build in Node.js I then ended up looking into the world of SQL query builders, namely Knex.js which a few of the ORMs out there also use. Hmm ok, now query builders do I really need this in my life?

End of the day, all of this has me thinking. I'm proficient and happy to write raw SQL. I find ORMs provide good structure whilst prototyping early on and adjusting the model as I go, but this may just all be an illusion, since I equally would have little issue doing this work directly in my DB and all things said I would probably push more of the work and design correctly into my DB rather than polluting my application with such decisions.

I'd like to get some views from the Dev community:

Are ORMs still relevant?

If deemed that SQL queries in your application are fine, I'd be interested to understand whether you bundle these into a service / db access layer in your application or you find yourself peppering them across files.

Have you found benefit in using a query builder such as the features offered by Knex?

Do you feel as though you are using an ORM knowing you are going to be breaking out into native SQL at some point? In which case, is that OK with you?

💖 💪 🙅 🚩
imthedeveloper
ImTheDeveloper

Posted on December 17, 2019

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

ORM vs Query Builders vs Raw SQL
discuss ORM vs Query Builders vs Raw SQL

December 17, 2019