3 ms·
If you can avoid learning SQL or the underlying DBMS then great, I have no problem with people ignoring things that are ignore-able. Problem is you can't. You w
by hot_gril 2y ago
If you can avoid learning SQL or the underlying DBMS then great, I have no problem with people ignoring things that are ignore-able. Problem is you can't. You will need to learn the DBMS, and the ORM will end up just getting in the way of what you really want to do.
- DangitBobby 2y agoI've used ORMs extensively in my career, and I've seen it trotted out as a Boogeyman here a million times. Why do I still prefer writing queries with a good ORM over awkwardly composing SQL by conditionally concatenating strings? Is buggy, error prone string concatenation with a bunch of if statements the true way? What am I missing?
- hot_gril 2y agoConditional concat should be pretty rare. When are you doing that?
- DangitBobby 2y agoWhen I need a new where clause or a new order by, or I have to stop using an IN filter because you can't use an empty tuple. Stuff like that.
- hot_gril 2y agoYeah, if you're going to conditionally add filters, this is mostly the only way with SQL. There are a few tricks depending on the dialect, like =ANY() is more convenient than IN, or COALESCE can avoid some dynamic WHEREs. You're not really missing anything other than query builders, which are worse for other reasons.