SQLAlchemy-migrate 0.6.1を使用して、mysql データベースのバージョン管理を処理しています。リンクはドキュメントへのリンクです。しかし、彼らは 0.6.1 のドキュメントを削除したようです。
次のようなテーブルに外部キー制約を持つ新しい列を追加しようとしています:
fk = Column('fk',CHAR(36),ForeignKey('table_b.id'),server_default='11c137c0-ee7e-4f9c-91c5-8c77cec22b2c',nullable=False)
fk.create(table_a)
これは機能しますが、mysql は server_default をデフォルト値として保存し、それをすべての新しいレコードに追加します。私の場合、このデフォルト値は変わりません。
列にデフォルトを設定したいのですが、mysql にデフォルトとして保存したくありません。
ドキュメントでこれを見つけました:
fk = Column('fk',CHAR(36),ForeignKey('table_b.id'),default='11c137c0-ee7e-4f9c-91c5-8c77cec22b2c',nullable=False)
fk.create(table_a, populate_default=True)
しかし、それは sqlalchemy-migrate のより新しいバージョンに追加されていると思われます。sqlalchemy-migrate の 0.6.1 バージョンでこれが可能かどうかは誰にもわかりませんか?