如何查詢oracle私有臨時(shí)表的信息
我們通過(guò) 以下命令創(chuàng)建私有臨時(shí)表后,發(fā)現(xiàn)在user_tables里面查找不到 :
SQL> create private temporary table ora$ptt_mine1(c1 date);
Table created.
SQL> select table_name from user_tables where table_name='ORA$PTT_MINE1';
no rows selected
SQL>
但可以查詢:
SQL> desc ORA$PTT_MINE1
Name Null? Type
----------------------------------------- --------?----------------------------
C1 DATE
SQL> select * from ORA$PTT_MINE1;
no rows selected
SQL> insert into ORA$PTT_MINE1 values(sysdate);
1 row created.
SQL> select * from ORA$PTT_MINE1;
C1
---------
16-APR-21
那私有臨時(shí)表的定義在那里可以查到呢,因?yàn)檫@部分表只在內(nèi)存,ORACLE單獨(dú)給他提供了另外的數(shù)據(jù)字典:
SQL> SELECT TABLE_NAME from USER_PRIVATE_TEMP_TABLES;
TABLE_NAME
--------------------------------------------------------------------------------
ORA$PTT_MINE1
ORA$PTT_MINE
