oraclesql查詢表
① oracle中,如何利用sql語句查詢某個表的結構
利用sql語句查詢某個表的結構的方法:
通過Oracle中的user_tab_cols, user_col_comments, user_constraints, user_cons_columns表聯合查詢。
1、user_tab_cols用來獲取對應用戶表的列信息;
2、user_col_comments用來獲取對應用戶表列的注釋信息;
3、user_constraints用來獲取用戶表的約束條件;
4、user_cons_columns約束中用戶可訪問列。
示例代碼:
selectt.table_name,
t.column_name,
t.data_type,
t.data_length,
t.nullable,
t.column_id,
c.comments,
(SELECTCASE
WHENt.column_name=m.column_nameTHEN
1
ELSE
0
END
FROMDUAL)iskey
FROMuser_tab_colst,
user_col_commentsc,
(selectm.column_name
fromuser_constraintss,user_cons_columnsm
wherelower(m.table_name)='qh_outstoresabinfo'
andm.table_name=s.table_name
andm.constraint_name=s.constraint_name
ands.constraint_type='P')m
WHERElower(t.table_name)='qh_outstoresabinfo'
andc.table_name=t.table_name
andc.column_name=t.column_name
andt.hidden_column='NO'
orderbyt.column_id
② oracle sql 怎麼查看錶里的所有數據
查詢系統表:select * from all_tables where table_name not in (select table_name from user_tables);
查詢用戶表:select * from user_tables;
③ oracle中怎麼用sql查表以及表的欄位名
1、用sql查表
查表的時候需要用到user_tables、all_tables,user_tables查出來的是該用戶擁有的表,all_tables查出來的是所有用戶的表。
2、用sql查表的欄位
查表的欄位需要用到user_tab_columns、all_tab_columns,一樣的前者只能查到該用戶擁有的表,後者可以查詢所有用戶的表。
3、其他
與上面類似的還有查詢對象(user_objects、all_objects)、索引(user_indexes、all_indexes)、約束(user_constraints、all_constraints)等。
至於到底怎麼查,先用select * from XXX查看錶的信息,然後看下就知道了。比如查一個system表dba_data_files的欄位,可以用select * from all_tab_columns where table_name = 'DBA_DATA_FILES',注意表名大寫。
2014-11-04補充:
下列列出一些比較重要的數據字典:
DBA_TABLES:描述資料庫中所有相關的表。
DBA_ALL_TABLES:描述資料庫中所有的對象以及相關的表。
USER_TABLES:描述資料庫中當前用戶擁有的相關的表。
USER_ALL_TABLES:描述資料庫中當前用戶擁有的對象以及相關的表。
ALL_TABLES:描述資料庫中所有的用戶可以訪問的相關的表。
ALL_ALL_TABLES:描述資料庫中所有的用戶可以訪問的對象以及相關的表。
DBA_TAB_COLUMNS:描述資料庫中所有表的列屬性。
USER_TAB_COLUMNS:描述資料庫中當前用戶擁有的表的列屬性。
ALL_TAB_COLUMNS:描述資料庫中所有用戶可以訪問的表的列屬性。
DBA_CONSTRAINTS:描述資料庫中所有表的約束和屬性。
DBA_CONS_COLUMNS:包含在DBA_CONSTRAINTS約束定義中的可訪問的列的信息。
ALL_CONSTRAINTS:描述資料庫中所有用戶可以訪問的表的約束和屬性。
ALL_CONS_COLUMNS:包含在ALL_CONSTRAINTS約束定義的可訪問的列的信息。
USER_CONSTRAINTS:描述資料庫中所有當前用戶擁有的表的約束的屬性。
USER_CONS_COLUMNS:包含在USER_CONSTRAINTS約束定義的可訪問的列的信息。
DBA_SEQUENCES:資料庫中所有序列的描述。
ALL_SEQUENCES:描述資料庫中所有用戶可以訪問的序列的描述。
USER_SEQUENCES:描述資料庫中所有當前用戶擁有的序列的描述。
DBA_INDEXES:描述資料庫中所有的索引的屬性。
ALL_INDEXES:描述資料庫中所有用戶可以訪問的索引的屬性。
USER_INDEXES:描述資料庫中所有當前用戶擁有的索引的屬性。
④ oracle 中如何用sql語句查詢某個表被應用在哪個視圖中了
sql語句:select
*
from
dba_dependencies
where
REFERENCED='表名'
and
TYPE='VIEW';
靜態數據字典視圖DBA_DEPENDENCIES描述各schema的objects之間的相互依賴關系。
DBA_DEPENDENCIES各欄位解釋
OWNER
依賴object的擁有者
NAME
依賴object的名字
TYPE
依賴object的類型
REFERENCED_OWNER
被依賴object的擁有者
REFERENCED_NAME
被依賴object的名字
REFERENCED_TYPE
被依賴object的類型
REFERENCED_LINK_NAME
如果被倚賴的object是一個遠程表,這里顯示dblink的名字,否則為空
DEPENDENCY_TYPE
從屬類型
⑤ 怎麼用sql語句查看oracle資料庫里的所有表
可以從表user_tables中查詢。
select
sum(num_rows)
from
user_tables
;
就是顯示用戶所有表的行數其中num_rows是每個表的行數,用sum加總一下,就是當前用戶所有表的總行數。
但因為user_tables中的數據不是實時統計,會有時間差,所以以上sql統計得到的結果與實際會存在一定誤差。
⑥ 在oracle資料庫中如果查詢一個資料庫中有哪幾張表
1、本文以plsql圖形化管理工具為例,使用它連接oracle資料庫。當點開plsql的時候,就需要輸入用戶名、密碼、資料庫然後連接。如果連接成功,就能查看裡面的表等等操作,如果連接不成功,就輸入正確的信息再次嘗試。
⑦ oracle資料庫如何查詢表數據量
1、查看錶空間的大小,首先我們要登錄到oracle資料庫,我們要使用管理員的身份登錄,因為管理員的許可權要相對的大一些。