pandas: MySQL
sqlalchemy で mysqlclient を使うには、まず mysqlclient をインストールする必要があります。次に、SQLAlchemy のエンジン構成で mysqlclient を使用するように設定します。以下は、Qiita の記事 ¹ からの例です。
from sqlalchemy import create_engine
engine = create_engine('mysql+mysqldb://user:password@host/dbname', echo=True)
また、CData Python Connector for MySQL³ を使用することもできます。これは、SQLAlchemy ORM を使用して Python で MySQL データに連携するためのドライバです。
from sqlalchemy import create_engine
engine = create_engine("mysql+mysqlconnector://user:password@host/dbname")
どちらの方法でも、SQLAlchemy で MySQL に接続することができます。
ソース: Bing との会話 2023/6/7
- (1) 【Python】SQLAlchemy で MySQL に接続する - Qiita. https://qiita.com/curry__30/items/432a21426c02a68e77e8.
- (2) SQLAlchemy ORM を使って、Python で MySQL データに連携 … https://www.cdata.com/jp/kb/tech/mysql-python-sqlalchemy.rst.
- (3) 【Python】SQLAlchemy を試してみる - Qiita. https://qiita.com/ktamido/items/ebdbe5a85dbc3e6004ae.
django
.env に django の DATABASE_URL が定義されているとする
import sqlalchemy as sa
import environ
import pandas as pd
url = e.str("DATABASE_URL").replace("mysql", "mysql+mysqldb")
sql = "select id, username from auth_user"
engine = sa.create_engine(url, echo=False)
df = pd.read_sql(sql, con=engine)
QuerySet から
from accounts.models import User
df = pd.DataFrame(User.objects.values("id", "username"))