Python SQLAlchemyの使い方のサンプル
環境
Windows 11 Pro 64bit
Python 3.11
概要
SQLAlchemyを利用して、基本的なORM操作(INSERT, SELECT, UPDATE, DELETE)を確認します。
ファイル構成
. └── sql ├── main.py # ORM操作をします。 ├── models │ └── user.py # userテーブルの定義をします。 └── setting └── setting.py # Engineインスタンス, session生成など行います。
操作方法
1.パッケージインストール
DBにmysqlを利用するので、ドライバとして mysqlclient をインストールします。
pipenv install sqlalchemy
pipenv install mysqlclient
2.DB接続に必要な設定を行います。
from sqlalchemy import * from sqlalchemy.orm import * from sqlalchemy.ext.declarative import declarative_base dialect = "mysql" driver = "mysqldb" username = "root" password = "pwd11" host = "192.168.11.22" port = "3306" database = "test_db" charset_type = "utf8" db_url = f"{dialect}+{driver}://{username}:{password}@{host}:{port}/{database}?charset={charset_type}" # DB接続するためのEngineインスタンス ENGINE = create_engine(db_url, echo=True) # DBに対してORM操作するときに利用 # Sessionを通じて操作を行う session = scoped_session( sessionmaker(autocommit=False, autoflush=False, bind=ENGINE) ) # 各modelで利用 # classとDBをMapping Base = declarative_base()