當前位置:成語大全網 - 新華字典 - Oracle的dual是什麽東西啊

Oracle的dual是什麽東西啊

Oracle提供的最小的工作表,只有壹行壹列,具有某些特殊功用。

特性

1、Oracle提供的最小的表,不論進行何種操作(不要刪除記錄),它都只有壹條記錄——'X'。

例如:執行select * from dual,裏面只有壹條記錄;執行insert into dual values('Y')後,再次查詢dual表,仍然顯示壹條記錄。

2、是sys用戶下的壹張內部表,所有用戶都可以使用DUAL名稱訪問,無論什麽時候這個表總是存在。

例如:執行壹個查看當前日期的語句 select sysdate from dual,這條語句在放在放在任何壹個oracle數據庫當中都不會報錯,所以壹般做壹些特定查詢的時候用這個表是最穩妥的。

擴展資料

Oracle系統中dual表是壹個“神秘”的表,網上有很多網友都對該表進行了測試,該表只有壹行壹列,其實該表和系統中的其他表壹樣,壹樣可以執行插入、更新、刪除操作,還可以執行drop操作。

但是不要去執行drop表的操作,否則會使系統不能用,數據庫起不了,會報Database startup crashes with ORA-1092錯誤。此時也不要慌亂,可以通過執行以下步驟來進行恢復。可以用sys用戶登陸。

SQL> create pfile=’d:pfile.bak’ from spfile

SQL> shutdown immediate

在d:pfile.bak文件中最後加入壹條:

replication_dependency_tracking = FALSE

重新啟動數據庫:

SQL> startup pfile=’d:pfile.bak’

SQL> create table “sys”.”DUAL”

[an error occurred while processing this directive]

百度百科-dual