Postgres数据库迁移失败并显示“违反了非null约束”

时间:2018-09-04 17:38:31

标签: python database postgresql migration

我正在尝试通过使用包括步骤manage.py migration的升级脚本,将Netbox(https://github.com/digitalocean/netbox)从旧版本(2.3.7)升级到新版本(2.4.3)。 并在此步骤中失败并显示错误:

vagrant@ubuntu-xenial:/opt/netbox/netbox$ python3 manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, circuits, contenttypes, dcim, extras, ipam, secrets, sessions, taggit, tenancy, users, virtualization
Running migrations:
  Applying auth.0009_alter_user_last_name_max_length...Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/django/db/backends/utils.py", line 85, in _execute
    return self.cursor.execute(sql, params)
psycopg2.IntegrityError: null value in column "id" violates not-null constraint
DETAIL:  Failing row contains (null, auth, 0009_alter_user_last_name_max_length, 2018-09-04 17:29:15.531382+00).

postgres数据库已被填充。 如果我在空数据库上运行,则升级正常。 但是作为一个新手,我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

我认为这是在您运行Postgres 9.x且导入的数据来自Postgres 10时发生的。