問題タブ [alembic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - alembicの既存のMySQLテーブルに主キーを追加する
alembicを使用して、既存のMySQLテーブルに「id」主キー列を追加しようとしています。私は次のことを試みました...
しかし、次のエラーが発生しました
PRIMARY KEYalembicによって生成されたsqlステートメントがalterステートメントの最後に追加されなかったようです。いくつかの設定を見逃した可能性がありますか?
前もって感謝します!
git - バージョン管理下でalembeを介して生成されたDB移行スクリプトを保持する必要がありますか
ライブ サイトで SQLAlchemy と PostgreSQL を使用しています。データベースの移行には、alembic を使用しています。これを行う最善の戦略についていくつか質問があります。
DB 移行スクリプトをバージョン管理下に置く必要がありますか?
自動展開には Fabric を使用しています。移行スクリプトを手動で実行する必要がありますか?それとも自動化できますか?
python - alembic: 移行で update ステートメントにサブクエリを使用する
データベースの移行を管理するために alembic を使用しています。現在の移行では、SELECT ステートメントに基づいて列を作成する必要もあります (基本的には、別のテーブルから列をコピーします)。
プレーンな SQL を使用すると、次のことができます。
ただし、alembic でそれを行う方法がわかりません。
「???」にプレーンな SQLAlchemy 式を使用しようとしました。
しかし、それは実行中に悪い SQL と ProgrammingError を生成するだけです:
python - 別のサブフォルダーからのサブフォルダーからのPythonモジュールの相対インポート
Pythonのsqlalchemyツールであるalembicを使用しようとしています。コマンドを入力すると、内部に py ファイルを含むフォルダー「alembic」が生成されます。内部の py ファイルは、「myapp」という別のフォルダーにあるアプリケーションにリンクする必要があります。しかし、私はそれをリンクすることはできません。存在しないと表示され、相対インポートが機能しません。
そのため、 myapp/configs/config.pyファイルから構成クラスをインポートする必要があります。
env.py 内:
うまくいきません。
私は試した:
失敗。
alembic ドキュメントのコード例では、「myapp.whatever」を使用するだけです。
「/apps」と「/myapp」を環境変数の PYTHON_PATH に追加しました。
エラー例:
python - FlaskアプリケーションでAlembicとFlask-SQLAlchemyを使用してmodels.pyへの変更を検出する
私はFlaskでAlembicを使おうとしています-SQLAlchemyとFlask。これが私のアプリケーションディレクトリ構造です
私はmodels.pyにいくつかのクラスがあります。私が欲しいのは、alembicが変更をチェックし(models.pyに新しく追加されたクラスのように)、upgrade()関数に反映されるようにバージョンファイルを生成できるようなメソッドです(コマンドの実行時に)。
どうすればこれを達成できますか?私はこれが可能であるはずですが、これを達成する方法を理解していないと確信しています!
PS:追加情報が必要な場合は、私に知らせてください。
python - Alembicを使用して列挙型フィールドを変更する
9.1より古いバージョンのPostgreSQL(列挙型にALTER TYPEを追加する)を使用している場合、アレムビック移行でEnumフィールドに要素を追加するにはどうすればよいですか?このSOの質問は直接のプロセスを説明していますが、アランビックを使用してそれをどのように翻訳するのが最善かはよくわかりません。
これは私が持っているものです:
残念ながら、上記はALTER TABLE testcaseresult ALTER COLUMN status TYPE statusアップグレード時にのみ生成され、基本的には何も実行されません。
sqlalchemy - Alembic と SQLAlchemy の統合
Alembic を SQLAlchemy と統合する方法を検討しています。私が必要としているのは、Alembic が で行った変更を自動的に検出し、実行時に models.pyMySQL データベースでそれを更新する方法です。alembic revision -m "<message_here>"alembic upgrade head
これが私が現時点で持っているものです。
これは私のアプリケーション ディレクトリ構造です。
には以下models.pyが含まれます。
alembic.iniでデータベース資格情報を使用して構成しましたsqlalchemy.url
私は私の中に次のものを持っていますenv.py
しかし、を使用して移行を実行すると
それは言う
しかし、開くとmigrations/versions/9aa5864e4c8_initial.py、これが表示されます。
バージョン ファイルには、作成することを期待していたテーブルに関するものは何もなく、後でコマンドを実行したときに MySQL と同期されますalembic upgrade head。alembic revisionコマンドを実行したときに Alembic を構成して、スキーマを選択しmodels.pyてバージョン ファイルを生成するにはどうすればよいですか? ここで些細なことを見逃していると思います。それが何であるかわからない!
python - alembic と最後に挿入された値の取得
データベース構造の管理に alembic を使用しています。
id を整数として使用し、主キーを使用してテーブルを追加すると、id 列は autoincrement-column になります。アップグレード スクリプトでデータをクエリして、正しい ID を確実に取得するにはどうすればよいですか (この特定のケースでは ID が 1 であることはわかっています)。
私は方法を知っています
更新できることはわかっていますが、以下のようなものを使用して選択するにはどうすればよいですか?
python - アレンビック:アレムビックリビジョンはインポートエラーを示しています
FlaskプロジェクトをAlembic
アプリケーション構造と統合しようとしています。
dbディレクトリから次のコマンドを実行しようとすると、次のように表示されます。
移行の自動生成のための簡単なアランビック作業例のリクエストで説明した解決策を試しましたが、うまくいきません
env.py run_migrations_online()変化を伴う私の方法は
どうすればこれを修正できますか?
python - sqlalchemy.exc.ArgumentError:プラグインを読み込めません:sqlalchemy.dialects:driver
alembic移行を実行しようとしていますが、実行すると
それは言うのに失敗します
データベースのURLは
そして私psycopg2は自分のvirtualenvにインストールしました
なぜこの問題を引き起こしている可能性がありますか?