SQLSoup を使ってみる

とても今更ながら SQLSoup というのがあるのを知った。
http://readthedocs.org/docs/sqlsoup/en/latest/


個人プロジェクトでは SQLAlchemy を使っていて、Web アプリケーションとかだとはとても便利で重宝している。
ただバッチのような簡単なスクリプトを書く場合はライトウェイトじゃない気がしていた。
もっとお手軽に扱える、例えば PerlDBI で hashref でとれたり、PHP だと PDO で配列のキーにカラム名指定して取れたりとか。
Python の MySQLdb だと辞書のキーにカラム名を指定して取得する事ができない。
2012/10/24 追記
DictCursor を使えばできるらしい。知らなかった!!



で、SQLSoup だとそこらへんが解決できそうな気がする。

import sqlsoup  
db = sqlsoup.SQLSoup('mysql://root:foo@localhost/examle?charset=utf8&use_unicode=0')    
items = db.items.limit(10).all()
for item in items:
    print item.title

SQLAlchemy だと items の定義を自分で書いたりするけど、SQLSoup はこんな感じで書けるのが嬉しい。


参考文献
http://d.hatena.ne.jp/perezvon/20070224/1172340160