- インポートとベースの作成: まず、必要なモジュールをインポートします。
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
次に、ベースオブジェクトを作成します。
Base = declarative_base()
- テーブルクラスの作成:
データベースのテーブルを表すクラスを作成します。各クラスは
Base
クラスを継承し、テーブルのカラムをクラスの属性として定義します。
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
age = Column(Integer)
- テーブルの作成とデータの追加:
テーブルを作成するために、エンジンを作成し、
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()
- データのクエリ: データを取得するために、クエリを実行します。
users = session.query(User).all()
for user in users:
print(user.name, user.age)
これは、SQLAlchemyのDeclarative Baseの基本的な使い方の概要です。さまざまなクエリや操作が可能であり、詳細な情報はSQLAlchemyの公式ドキュメントを参照してください。