我收到一个我无法理解的错误。错误非常简单:
ORA-00001: unique constraint (*schema*.*xyz_constraint*) violated
然而,造成我困惑的是事实上似乎不存在这样的限制。它当然没有在桌子上定义;有问题的DB几乎没有定义参照完整性,我插入数据的特定表没有定义键。
对于它的价值,我无法在数据库中的任何地方找到约束:
select *
from all_constraints
where constraint_name like '%xyz_constraint%'
有什么我可以忽略的吗?感谢。
答案 0 :(得分:4)
当约束属于另一个用户并且您没有权限时,就会发生这种情况。
现在尝试从SYS角度再次查看
答案 1 :(得分:2)
我有完全相同的错误,这不是权限问题。相反,该实体结果是ERROR! The field 'loop' is supposed to be a string type, however the incoming data structure is a <class 'ansible.parsing.yaml.objects.AnsibleSequence'>
而不是INDEX
,我发现它:
CONSTRAINT
...因为SELECT * FROM ALL_INDEXES WHERE INDEX_NAME LIKE '%XYZ_UK1'
或ALL_CONSTRAINTS
中不存在。混淆错误消息是如何相同的。我正在运行Oracle 11g。
答案 2 :(得分:1)
模式对象名称几乎总是以大写形式存储。尝试
select *
from all_constraints
where constraint_name like '%XYZ_CONSTRAINT%'
ORA-00001通常发生在重复的主键上。你确定桌子上没有一个吗?