0

私の要件に最適なpython DBALライブラリを誰かに勧めてもらえますか。SQL ステートメントを直接書きたいと思います。ほとんどのロジックは db ストアド プロシージャ (postgresql) にあるため、db プロシージャを呼び出し、引数を渡し、結果を取得するだけで済みます。ライブラリは、引用符を付けるのに役立つはずです(SQLインジェクトを防ぎます)。sqlalchemy で遊んでみましたが、engine.execute メソッドに直接 sql 文を書くとクォートヘルパーが無いと思います。

ありがとうございました

4

2 に答える 2

3

sqlalchemy を詳しく調べるべきでした。プレースホルダーを引用するという素晴らしい仕事をします:

>>> engine = sqlalchemy.create_engine("sqlite:///:memory:")
>>> engine.execute("select ?", 5).fetchall()
[(5,)]
>>> engine.execute("select ?", "; drop table users; --").fetchall()
[(u'; drop table users; --',)]
于 2011-08-09T19:21:41.637 に答える