Python+SQLAlchemy+MySQLでDB接続
BottleでWEBアプリ作ろうとしていて「PythonでWEBアプリを作成する 〜 WEBアプリフレームワーク「Bottle」を使用してみる」では簡単なものを作ってみたが、SQL書くの面倒。
なので、ORマッパー「SQLAlchemy」を使ってみる。
pipで「SQLAlchemy」をインストール。
次のように書いて接続を試みる。
import sqlalchemy as dbMapper ・・・・・・・ url = 'mysql://ユーザ名:パスワード@IPアドレス/DB名' engine = dbMapper.create_engine(url, echo=True)
あえなく撃沈。ふぁ???
ImportError: No module named 'MySQLdb'
Google先生に問い合わせたところ、「ImportError: No module named MySQLdb」が該当。
pipでpymysqlをインストールして、urlを次のように書き換え。
url = 'mysql+pymysql://ユーザ名:パスワード@IPアドレス/DB名'
こうすると動いた。
次のような流れ。
import sqlalchemy as dbMapper ・・・・・・・ url = 'mysql://ユーザ名:パスワード@IPアドレス/DB名' engine = dbMapper.create_engine(url, echo=True) rows = engine.execute('SQL文') for row in rows: print(row)