> In most cases an ORM is just another layer of complexity.
That unlike SQL, drastically reduces the amount of code the programmer is forced to write for the vast majority of applications that programmers write.
SQL can't do the one thing most programs actually need, give them the ability to select a starting point, and then navigate the conceptual graph of data as the user moves around the application. ORM's provide that, object database provide that, SQL doesn't.
You're right, and that's what great about ORMs! But if you're asking a question of your data, like "how many widgets did I sell today?" then navigating a conceptional graph of data is the slowest, most convoluted, way of getting at that information.