查询dba_tables视图能查询到test5这张表,但是想查行数时却报错该表不存在
select table_name from dba_tables where owner=‘TEST’;
TABLE_NAME
TEST
TEST4
TEST5
TEST2
TEST3
select count() from TEST.TEST5;
select count() from TEST.TEST5
*
ERROR at line 1:
ORA-00942: table or view does not exist
查询表的DDL语句时也报错该表不存在
SELECT DBMS_METADATA.GET_DDL(‘TABLE’,‘TEST5’,‘TEST’) FROM DUAL;
ERROR:
ORA-31603: object “TEST5” of type TABLE not found in schema “TEST”
ORA-06512: at “SYS.DBMS_METADATA”, line 1546
ORA-06512: at “SYS.DBMS_METADATA”, line 1583
ORA-06512: at “SYS.DBMS_METADATA”, line 1901
ORA-06512: at “SYS.DBMS_METADATA”, line 2792
ORA-06512: at “SYS.DBMS_METADATA”, line 4333
ORA-06512: at line 1
究竟是怎么回事呢
原来是在创建表的时候表明后面不小心加了个空格,所以才会导致查询不到
select count(*) from TEST."TEST5 ";
COUNT(*)
0
SQL> desc TEST."TEST5 "
Name Null? Type
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(128)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)