engine apiと接続 SQLAlchemyが提供するengineとは、接続を始めとしたSQLAlchemyの機能を使用するための起点となるオブジェクトです。 engineだけでも最低限のDB操作、つまりデータベースへの接続の作成、SQLステートメントの送信、および結果の取得を行うことができます。 engineオブジェクトは、create_engine関数を呼び出してデータソース名を渡すことによって作成されます。 engineを使用した簡単なサンプルを見てみましょう。sqlite3のオンメモリのDBに接続し、SQLを実行してみます。 from sqlalchemy import create_engine engine = create_engine('sqlite:///:memory:') # 接続する with engine.connect() as con: # テーブルの作成
適切にテーブル設計が出来ていれば O/R マッパーが自動生成する SQL で事足りるのだろうけれども、それでもやはり直接 SQL を記述したい場合もある。 そして、そういう時は得てしてパフォーマンスを追求したい場合が多い。 となると、バインド・パラメータを利用して、SQL 文の解析処理及び実行計画の生成をある程度抑制する必要が出てくる。 というわけで、SQLAlchemy を使って、生 SQL の利用と、バインド・パラメータの利用を試してみた。 SQL Expression Language Tutorial — SQLAlchemy 1.2 Documentation http://docs.sqlalchemy.org/en/latest/core/tutorial.html#using-textual-sql 〜略〜 Session = sessionmaker(bind=engin
この記事では、PythonのSqlAlchemyで生のSQL文(任意の文字列のSELECTやINSERT文)を実行する方法を紹介します。 SqlAlchemyはPythonのORMで便利です。ただ複雑な結合・集計などがあるSQL(SELECT文)をORMで表現すると、ソースが難解になり、逆に普通にSQLを書いたほうが綺麗になる時があります。 今回はそんな時に役立つ、SqlAlchemyで生SQLを実行する方法を紹介します。 スポンサーリンク SELECT文をSqlAlchemyで実行 生のSELECT文を、PythonのSqlAlchemyで実行するサンプルコードです。コード見て貰えれば分かりますが、SqlAlchemyは簡単に生SQLを実行できるようになってます。 from sqlalchemy.sql import text #(1)生のSELECTを定義 t = text("SELE
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く