固體表和DUAL表的介紹
固態表
固態表是Oracle中的一種特殊表,以X$開頭,屬於SYS使用者。它們儲存的是Oracle例項內部使用的執行資料,如一些效能統計資料、latch資訊等;在例項啟動時載入到記憶體中,並在資料庫的執行過程中動態新增刪除,在例項關閉時被釋放。系統中所有固態表可以由檢視v$fixed_table查詢得到。除SYS使用者外,其他使用者都不能直接查詢固態表,只能通過檢視查詢。
DUAL表
dual是一個虛擬表,用來構成select的語法規則,oracle保證dual裡面永遠只有一條記錄。我們可以用它來做很多事情,如下:
1、檢視當前使用者,可以在 SQL Plus中執行下面語句 select user from dual;
2、用來呼叫系統函式
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;--獲得當前系統時間
select SYS_CONTEXT('USERENV','TERMINAL') from dual;--獲得主機名
select SYS_CONTEXT('USERENV','language') from dual;--獲得當前 locale
select dbms_random.random from dual;--獲得一個隨機數
3、得到序列的下一個值或當前值,用下面語句
select your_sequence.nextval from dual;--獲得序列your_sequence的下一個值
select your_sequence.currval from dual;--獲得序列your_sequence的當前值
4、可以用做計算器 select 7*9 from dual;