The SQL inside the ORM/Builder box | Claudio Zizza
summary
Argues that hiding SQL behind an ORM doubles your problems, with concrete examples: a Microsoft Access site that needs nightly repairs then migrates to MySQL; Doctrine behavior where SQL happens on flush and the unit of work caches entities so lazy/eager loading and clear change results; execution-plan costs drop 15387 → 8 → 4.62 then rise to 26 when a column/index change occurs; shows window functions, CTEs, JSON dialects, and recommends reviewing generated SQL and using raw SQL for heavy queries.
AI-written summary · about
chapters (17)
- 0:00SQL and ORM concepts
- 4:43SQL variations and history
- 9:00SQL real-world quirks
- 12:57Doctrine ORM basics
- 15:27ORM limitations and SQL power
- 16:30SQL execution in Doctrine
- 20:49Entity manager behavior
- 22:56Lazy vs eager loading
- 26:10SQL query structure importance
- 29:04Hidden SQL changes impact
- 31:58ORM vs raw SQL
- 33:25Advanced SQL features
- 38:25Common Table Expressions
- 41:41SQL performance review
- 44:06SQL query analysis tools
- 44:51SQL learning resources
- 45:14Q&A
related talks
59mHow much database abstraction do I need?
30mLeave Your Inhibitions at the Database Connection
41mWhy Should I Know SQL and Databases When I Have an ORM?
46mBeyond Good and ORMs
02h 42mSQL (The Return): Demystifying Preconceptions and Using the DB Effectively
37mNo More Raw SQL with SQLAlchemy and ORMs
23mI Would Never Use an ORM
48mThe DB tamer
