约束xxxxxxx不是外键约束

时间:2015-02-12 20:32:36

标签: postgresql activerecord

我从不同的文件导入数百万行。

其中一个文件会引发有关约束的异常:

  

PG :: InternalError:ERROR:约束109531不是外键约束(ActiveRecord :: StatementInvalid)

如何找到约束109531?

我在pg_constraint上找不到它......

我应该在哪里看?

编辑:

错误直接来自PostgreSQL,Activerecord正在传递它。

使用psql手动添加父行后,现在如果我想删除或更新行,我将收到一个新的约束错误:

ERROR:  constraint 109529 is not a foreign key constraint

如果我试图找到约束:

select * FROM pg_constraint;

我可以看到许多类似数字的约束:

107878,109309,109521

仅限

TRUNCATE table CASCADE;

该行已被删除

1 个答案:

答案 0 :(得分:0)

好吧,在删除所有约束并重新创建它们之后(使用方法,因为有200多个约束),一切都很完美...

我已将此link用于自动生成/删除约束