【问题标题】:Flask SQLAlchemy null value in column "id" violates not-null constraintFlask SQLAlchemy 列“id”中的空值违反非空约束
【发布时间】:2021-01-08 10:32:19
【问题描述】:

我有一个 Web 应用程序和两个不同的环境:prod 和 staging。

我将表从一个数据库导出到另一个数据库,从生产到登台。现在 staging 数据库获取了所有表,但是,每当我尝试使用 staging web 应用程序创建模型时,我得到:

sqlalchemy.exc.IntegrityError: (psycopg2.errors.NotNullViolation) null value in column "id" violates not-null constraint

然后我意识到暂存数据库没有任何序列,所以我也将序列从 prod env 复制到 staging env。但是我仍然得到那个错误。我不确定问题是什么。它类似于here 的问题,但与那里的答案不同,我将表从 postgres db 导出到另一个 postgres db。

任何见解将不胜感激

【问题讨论】:

    标签: python postgresql flask flask-sqlalchemy


    【解决方案1】:

    在这种情况下,您似乎可以使用一种数据库迁移工具,它创建了一些额外的表来保持跟踪并导致问题。解决方案是您需要从旧数据库中导出关键表(您自己定义的),然后转储到 CSV、JSON,然后再次加载到 postgresql。

    【讨论】:

      猜你喜欢
      • 2020-03-15
      • 2021-08-06
      • 1970-01-01
      • 2021-11-02
      • 1970-01-01
      • 2019-08-08
      • 1970-01-01
      • 1970-01-01
      • 2016-02-14
      相关资源
      最近更新 更多