[Python 100日チャレンジ] Day 79 - ORMの考え方
SQLAlchemyなどで使われるORMの考え方を、テーブルとPythonオブジェクトの対応関係から理解します。
[Python 100日チャレンジ] Day 79 - ORMの考え方
ORMとは
ORMは、データベースのテーブルをPythonのクラスやオブジェクトとして扱う考え方です。SQLを直接書く代わりに、コード上のモデルを通してデータを操作します。
1
2
3
4
class User:
id: int
name: str
email: str
このようなクラスが、データベースのusersテーブルに対応するイメージです。
ORMのメリット
ORMを使うと、アプリのコードとデータ構造を近い形で扱えます。CRUD処理を整理しやすく、複雑なアプリでもデータ操作の見通しがよくなります。
注意点
ORMを使っていても、SQLの理解は必要です。JOIN、インデックス、トランザクション、集計の仕組みを知らないと、遅いクエリや意図しない取得が起きることがあります。
SQLAlchemy
PythonではSQLAlchemyが代表的なORMライブラリです。Webアプリや業務ツールでよく使われます。
今日のゴール
ORMは、SQLを隠す魔法ではなく、データベース操作をアプリのコードに合わせて整理する道具です。まずはテーブルとクラスの対応関係を理解しましょう。
この投稿は投稿者によって CC BY 4.0 の下でライセンスされています。
