RDBとO/Rマッパー

O/Rマッパーが好きな人の中で、プログラム中にSQLを書くべきでないという主張のかたを見かけるのだけれども、よくわからない。(仕事でそういう人にあったこともある。)
私は、O/Rマッパーはあまり好きでないし、プログラム中にSQLを書くのもそんなに悪くないと思っているので、真向から意見が違っているというのもあるのだけれど。
プログラム中にSQLを書くべきでないのなら、どうしてRDBを使っているのかと思う。OODBとかXMLDBとかのほうがインピーダンスミスマッチが少なくて扱いやすいのじゃないのかなぁ。
RDBのメリットというのは、大量件数のデータに対する処理効率がよいというところにあって、効率のためにデータを無理に表形式にまとめている(正規化というやつ)わけで、そのメリットを生かさないとRDBである理由なんてないんじゃないかと思う。
しかし、O/Rマッパーの提供するメソッドを経由して操作するのだとRDBの効率を最大に生かすことはできないように思うし、オブジェクトを中心にデータベースの設計をすると正規化よりもプログラム中での扱いやすさを重視して設計することになるような気がする。
なんでRDBをやめようという発想に行かないのかな?