MySQL データベースへの接続
計算の演習に入る前に、まずはデータベースへの接続から始めましょう。前の章では PostgreSQL データベースに接続しました。ここでは MySQL データベースに接続します。多くの人は、PostgreSQL での psycopg2 と同様に、事前にインストールが必要な pymysql データベースドライバーを使用します。
接続文字列は 'mysql+pymysql://' から始まり、どのダイアレクトとドライバーを使って接続するかを示します。ダイアレクトの後に 'username:password' の組み合わせが続きます。次に、'@host:port/' でホストとポートを指定します。最後に 'database_name' で接続先のデータベース名を指定して完了です。
それでは MySQL データベースへの接続を練習しましょう。対象は、これまで扱ってきたのと同じ census データベースです。SQLAlchemy の優れている点は、一度接続してしまえば接続先データベースの種類を抽象化してくれるため、どのデータベースでも同じ SQLAlchemy のコードを書けることです。
この演習はコースの一部です
Pythonで学ぶデータベース入門
演習の手順
sqlalchemyライブラリからcreate_engine関数をインポートします。- 次の文字列を連結して
create_engine()に渡し、censusデータベースへのエンジンを作成します。'mysql+pymysql://'(ダイアレクトとドライバー)'student:datacamp'(ユーザー名とパスワード)'@courses.csrrinzqubik.us-east-1.rds.amazonaws.com:3306/'(ホストとポート)'census'(データベース名)
engineに対して.table_names()メソッドを使い、テーブル名を表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import create_engine function
from sqlalchemy import create_engine
# Create an engine to the census database
engine = create_engine(____)
# Print the table names
print(____)