我剛剛發現我正在運行的一個查詢不是來自實際表格,而是來自VIEW。什麼是SQLPlus命令查看VIEW語句?
我希望看到該視圖中的SQL查詢。如果我嘗試describe
我得到一個對象不存在的錯誤。當我從視圖中選擇時,我得到一些數據。
我剛剛發現我正在運行的一個查詢不是來自實際表格,而是來自VIEW。什麼是SQLPlus命令查看VIEW語句?
我希望看到該視圖中的SQL查詢。如果我嘗試describe
我得到一個對象不存在的錯誤。當我從視圖中選擇時,我得到一些數據。
如果你想看到用來創建視圖中可以使用的功能dbms_metadata.get_ddl
,它返回一個CLOB實際的SQL:
select dbms_metadata.get_ddl ('VIEW'
, 'MY_VIEW' -- view name
)
from dual
有一些更多的選擇,如果你需要他們。
如果你只想describe它像往常一樣。如果不工作,你是在錯誤的模式或對象不存在:
DESC MY_VIEW
如果在不正確的方案是,你可以使用:
select dbms_metadata.get_ddl ('VIEW'
, 'MY_VIEW', -- view name
, 'MY_SCHEMA'
)
from dual
或
DESC MY_SCHEMA.MY_VIEW
要查看視圖的底層SQL,您需要查詢數據字典。嘗試
select view_name, text from user_views where view_name = 'MY_VIEW';
如果用戶不擁有的視圖,然後嘗試all_views
;
意見應該表現得完全一樣的表做,據我所知的人具有選擇權限應該能夠做一個描述。你確定你正在查詢相同的視圖/表嗎? – NullUserException