ORA-22911: duplicate storage specification for the nested table item

文档解释

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.再次尝试使用新基于规范定义的表达式创建嵌套表。

你可能感兴趣的