SQLAlchemyのDeclarative Baseの基本的な使い方


  1. インポートとベースの作成: まず、必要なモジュールをインポートします。
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String

次に、ベースオブジェクトを作成します。

Base = declarative_base()
  1. テーブルクラスの作成: データベースのテーブルを表すクラスを作成します。各クラスはBaseクラスを継承し、テーブルのカラムをクラスの属性として定義します。
class User(Base):
    __tablename__ = 'users'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    age = Column(Integer)
  1. テーブルの作成とデータの追加: テーブルを作成するために、エンジンを作成し、Base.metadata.create_all()メソッドを呼び出します。
engine = create_engine('sqlite:///example.db')
Base.metadata.create_all(engine)

新しいユーザーを追加するには、セッションを作成し、add()メソッドを使用します。

from sqlalchemy.orm import sessionmaker
Session = sessionmaker(bind=engine)
session = Session()
new_user = User(name='John Doe', age=25)
session.add(new_user)
session.commit()
  1. データのクエリ: データを取得するために、クエリを実行します。
users = session.query(User).all()
for user in users:
    print(user.name, user.age)

これは、SQLAlchemyのDeclarative Baseの基本的な使い方の概要です。さまざまなクエリや操作が可能であり、詳細な情報はSQLAlchemyの公式ドキュメントを参照してください。