私たちは SQLAlchemy に甘やかされています。
以下はチュートリアルから直接引用したもので、
セットアップと作業は非常に簡単です。
また、頻繁に行われるため
、ドキュメントは2011 年 8 月に完全な宣言型に移行しました。
環境をセットアップします (テストには SQLite インメモリ データベースを使用しています)。
>>> from sqlalchemy import create_engine
>>> engine = create_engine('sqlite:///:memory:', echo=True)
>>> from sqlalchemy import Table, Column, Integer, String, MetaData
>>> metadata = MetaData()
テーブルを定義します。
>>> players_table = Table('players', metadata,
... Column('id', Integer, primary_key=True),
... Column('name', String),
... Column('score', Integer)
... )
>>> metadata.create_all(engine) # create the table
ログを有効にしている場合は、SQLAlchemy が作成する SQL が表示されます。
クラスを定義します。
>>> class Player(object):
... def __init__(self, name, score):
... self.name = name
... self.score = score
...
... def __repr__(self):
... return "<Player('%s','%s')>" % (self.name, self.score)
クラスをテーブルにマップします。
>>> from sqlalchemy.orm import mapper
>>> mapper(Player, players_table)
<Mapper at 0x...; Player>
プレーヤーを作成します。
>>> a_player = Player('monty', 0)
>>> a_player.name
'monty'
>>> a_player.score
0
これで、プレーヤー テーブルができました。