ORM(Object-Relational Mapping)は、データベース のテーブルを、プログラムの オブジェクト として扱えるようにする 仕組み・ライブラリです。「表の行」と「オブジェクト」を対応づけ(マッピング)します。
ORMを使うと、SQL を直接書く代わりに、慣れたプログラミングの書き方でデータを操作できます。
利点と注意点は次のとおりです。
- 利点 … 開発が速い。データ型 の恩恵を受けやすい。データベースの種類の違いを吸収してくれる。
- 注意点 … 裏で発行されるSQLが見えにくく、気づかぬうちに非効率な問い合わせ(N+1問題など)を生むことがある。
便利な一方、「裏でどんなSQLが動いているか」を意識できると、性能問題を避けられます。ORMはSQLを不要にするものではなく、SQLの知識の上でこそ、うまく使いこなせる道具です。