ORA-22911: duplicate storage specification for the nested table item ORACLE 报错 故障修复 远程处理
文档解释
ORA-22911: duplicate storage specification for the nested table item
Cause: The storage clause is specified more than once for the NESTED TABLE column.
Action: Remove the duplicate storage specification.
ORA-22911错误指示您提供了两个具有相同名称的嵌套表项的存储指定符。要解决乌龟状态22911,即定义时存储指定符应唯一,必须为每个嵌套表项定义单独的存储指定符。
官方解释
ORA-22911错误报告了在尝试定义一个嵌套表时发生的错误。嵌套表具有一组相关变量,称为元素。每个元素都可能有自己的存储特定符。
在SQL查询或数据库服务器操作期间,ORA-22911错误意味着两个带有相同名称的元素具有相同的存储特定符。换句话说,你不能把两个表项放在一个墙上。
常见案例
ORA-22911错误通常伴随着一个错误信息,例如:
创建嵌套表时出现错误:
SQL> CREATE OR REPLACE TYPE T_PRIORITY AS TABLE OF INTEGER;
2 /
TYPE T_PRIORITY
2 创建表类型
3 /
表类型T_PRIORITY
4 创建嵌套表时出错
5 CREATE TABLE MyTable
6 OF T_PRIORITY
7 NESTED TABLE element1 COLUMN definition STORAGE (INITIAL 10M)
8 NESTED TABLE element2 COLUMN definition STORAGE (INITIAL 10M)
9 /
创建表MyTable
ERROR at line 8:
ORA-22911: 复制存储规范的嵌套表项
一般处理方法及步骤
1.检查嵌套表中的信息,确保对元素规范唯一性。
2.如果出现了重复,请使用DIFFERENT存储指定符重新定义嵌套表元素。
3.再次尝试使用新基于规范定义的表达式创建嵌套表。