2014-02-12 327 views

回答

57
select sequence_owner, sequence_name from dba_sequences; 


DBA_SEQUENCES -- all sequences that exist 
ALL_SEQUENCES -- all sequences that you have permission to see 
USER_SEQUENCES -- all sequences that you own 

注意,因爲你是根據定義,所有序列的所有者從USER_SEQUENCES返回,存在USER_SEQUENCES沒有SEQUENCE_OWNER列。

+1

我收到以下錯誤:在行 錯誤1 ORA-00942:表或視圖不存在 – sheidaei

+2

對我來說這一次的工作:SELECT * FROM all_sequences; – sheidaei

+1

是的,這就是爲什麼我提到所有三個視圖,DBA/ALL/USER_SEQUENCES。每個人都可以訪問USER_和ALL_視圖,但不一定是DBA_視圖。這取決於您的本地安全策略。清楚的是,如果您無法訪問DBA_視圖,那麼您真的無法回答「我如何獲取數據庫中存在的所有序列?」這個問題。 –

23

您可能沒有權限dba_sequences。所以,你可以永遠只是做:

select * from user_sequences; 
相關問題