ORA-01779: cannot modify a column which maps to a non key-preserved table ORACLE 报错 故障修复 远程处理
文档解释
ORA-01779: cannot modify a column which maps to a non key-preserved table
Cause: An attempt was made to insert or update columns of a join view which map to a non-key-preserved table.
Action: Modify the underlying base tables directly.
官方解释
常见案例
1、当执行ALTER TABLE,希望修改其中一个字段时,数据表字段中有两个字段,一个映射到子查询,并且这个子查询结果中没有主键时,即抛出该错误。
正常处理方法及步骤
1、查看子查询中是否有主键,如果没有,需要添加主键到子查询中。
2、修改数据表中不能更改的字段的定义,将其中的映射项改为主键保留的子查询,这样就可以正确的更改表中的这个字段了。