天天看点

ORA-02266: unique/primary keys in table referenced by enabled foreign keys

在数据库里面使用truncate命令截断一个表的数据时,遇到如下错误

sql >truncate table escmowner.subx_item

ora-02266: unique/primary keys in table referenced by enabled foreign keys

有时候对应的中文错误提示为:ora-02266: 表中的唯一/主键被启用的外部关键字引用,一般出现这个错误,是因为表中的主键被其它表的外键所引用,导致删除数据时出错。

此时,你可以通过下面脚本查看一下涉及该表主键的外键约束信息。

查询结果如下所示:

解决方法:先禁用表的主键约束,等截断后再启用

注意事项:在enable主键后不会自动恢复外键(没有cascade选项),因此需要手工对引用该键的约束进行enable。