Oracle學習筆記:dba_tables、all_tables、user_tables區別


在 Oracle 中可以通過 DBA_TABLESALL_TABLESUSER_TABLES 等3個視圖表查詢關系表信息,它們之間的關系和區別為:

DBA_TABLES >= ALL_TABLES >= USER_TABLES
  • DBA_TABLES:DBA擁有的或者可以訪問的所有關系表
  • ALL_TABLES:某一用戶所擁有的或者可以訪問的所有關系表
  • USER_TABLES:某一用戶所擁有的所有關系表

由上可知,當某一用戶本身就為數據庫 DBA 時,DBA_TABLES 與 ALL_TABLES 等價。

此規律可以類推至 Oracle 中其它類似名稱的視圖。

需要注意的是在 ORACLE 數據庫中大小寫是敏感的,而此三表中數據默認都是大寫的,所以在進行查詢的時候注意小寫的數據可能會造成數據無法查到。

因此需要進行轉換,例如:

select * from user_tables where table_name = upper('temp_cwh_city')

參考鏈接:Oracle ALL_TABLES、DBA_TABLES和USER_TABLES的區別


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM