我花了一些时间来了解 Alemic,以及如何在没有任何设置的情况下手动运行迁移。由于某些原因,我们需要能够在没有 init、ini 文件或执行上下文的情况下手动执行操作。
这是我的结果:
import sqlalchemy
from alembic.migration import MigrationContext
from alembic.operations import Operations
# Connection
connection_string = 'postgres://xx:@localhost/xxdb'
engine = sqlalchemy.create_engine(connection_string.replace('postgres://', 'postgresql://'))
# Create migration context
mc = MigrationContext.configure(engine.connect())
# Creation operations object
ops = Operations(mc)
# Add column
try:
ops.add_column('record', sqlalchemy.Column('new_column', sqlalchemy.String))
except Exception as ex:
print(ex)
# Create table
try:
ops.create_table('new_table', [
sqlalchemy.Column('id', sqlalchemy.Integer, primary_key=True),
sqlalchemy.Column('name', sqlalchemy.String)
])
except Exception as ex:
print(ex)
它可以让您运行任何蒸馏器操作,而无需周围的所有东西。我只是想分享这一点,因为很难在网上获得完整的示例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)