在我的 SQLAlchemy 数据模型中,我有一个来自project->customer
. 我正在进行迁移,最初这个 FK 是通过
sa.ForeignKeyConstraint(['customer_id'], ['customers.id'], )
(这是在创建project
表的同一迁移期间,因此自动生成down
的只是简单的drop_table
)。
现在我删除了这个引用,因此放弃了这个约束。自动生成的迁移是
op.drop_constraint('FK__projects__custom__412EB0B6', 'projects', type_='foreignkey')
问题是约束并不总是被命名为 that。在一个数据库中,我检查了它的命名FK__projects__custom__2E1BDC42
,在另一件事中...如何正确删除约束以及导致名称差异的原因是什么?
编辑: 显然我可以选择命名约束......文档当然没有提到这是一个好的和必要的想法。所以...我知道将来如何防止这种情况,但不知道如何解决当前问题。