SQLAlchemy を使用して新しいデータベースを作成するにはどうすればいいですか? 質問する

SQLAlchemy を使用して新しいデータベースを作成するにはどうすればいいですか? 質問する

SQLAlchemy を使用すると、Engine オブジェクトは次のように作成されます。

from sqlalchemy import create_engine
engine = create_engine("postgresql://localhost/mydb")

engineの引数で指定されたデータベースcreate_engine(この場合は) が存在しない場合、アクセスは失敗しますmydb。指定されたデータベースが存在しない場合に、SQLAlchemy に新しいデータベースを作成するように指示することは可能ですか?

ベストアンサー1

SQLAlchemy ユーティリティSQLAlchemy 用のカスタム データ型とさまざまなユーティリティ関数を提供します。最新の公式バージョンは pip を使用してインストールできます。

pip install sqlalchemy-utils

データベースヘルパー関数を含めるcreate_database:

from sqlalchemy import create_engine
from sqlalchemy_utils import database_exists, create_database

engine = create_engine("postgresql://localhost/mydb")
if not database_exists(engine.url):
    create_database(engine.url)

print(database_exists(engine.url))

おすすめ記事