文档解释
ORA-14173: illegal subpartition-extended table name syntax
Cause: Subpartition to be accessed may only be specified using its name. User attempted to use a subpartition number or a bind variable.
Action: Modify statement to refer to a subpartition using its name
Ora-14173错误表明您的查询使用的是非法的子分区-扩展表名语法。子分区扩展表名称只能用于表空间子分区,而不能用于表中的其他对象。
官方解释
ORA-14173:因为等于码的子分区不能派生出子分区之外的其他物件,而可以派生出子分区,所以子分区扩展表名称只能用于指定表空间子分区,而不能用于其他对象。
例子:
创建一个空间子分区表:
SQL> CREATE TABLE users
2 (id number,
3 name varchar2(30)
4 )
5 PARTITION BY RANGE (id)
6 (PARTITION P1 VALUES LESS THAN (1000),
7 PARTITION P2 VALUES LESS THAN (2000));
常见案例
一般情况下,使用子分区扩展表名称时会收到此错误消息:
SQL> SELECT * FROM users(P1);
出现以下错误:
ORA-14173:该等式码非法派生出其他物件除了子分区
正常处理方法及步骤
1、正确标识表(未扩展)名称
2、如果要访问子分区,使用以下声明:
SELECT * FROM users PARTITION(P1);