我有一个表,其中包含安装错误:
ass_table = Table('ass', db.Model.metadata,
Column('id1', db.Integer, db.ForeignKey('class1.id')),
Column('id2', db.Integer, db.ForeignKey('class2.id')),
)
我真的应该把primary_key=True
添加到Columns
或PrimaryKeyConstraint('id1', 'id2', name='silly_me')
中。你知道吗
它最初创建的alembic自动生成代码是:
op.create_table('ass',
sa.Column('id1', sa.Integer(), nullable=True),
sa.Column('id2', sa.Integer(), nullable=True),
sa.ForeignKeyConstraint(['id2'], ['class2.id'], ),
sa.ForeignKeyConstraint(['id1'], ['class1.id'], )
)
我确认我的Postgres数据库没有在ass
表上建立主键。你知道吗
现在在中添加代码不会自动生成用于迁移数据库的alembic脚本。你知道吗
添加必要的复合主键而不中断或破坏生产中的现有数据的最佳做法是什么?你知道吗
我不知道alembic,但要在纯postgres中实现这一点,我将执行以下操作:
相关问题 更多 >
编程相关推荐