❶ 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 怎樣查詢某用戶下的所有表的表名
1、首先在計算機中,打開Oracle的連接程序,用新建的資料庫管理員,進入【Oracle控制】的窗口上,滑鼠左鍵單擊【伺服器】按鈕,並選擇【SQL工作表】。
❸ 如何用sql在oracle環境下查看一個表空間中的所有表的表名
example:
tablespace : USERS
SQL>select table_name from dba_tables where tablespace_name='USERS';
前提是你要有DBA許可權
❹ oracle 怎樣查詢某用戶下的所有表的表名
解決方法:
1、dba_tables(在dba許可權下可查) SQL> conn / as sysdba Connected.
SQL> select count(*) from dba_tables where owner='TEST';
COUNT(*)
52
註:表名以及各詳細內容可以通過desc dba_tables查看相應欄位,在查詢相應內容。
2、all_tables(在dba許可權下輪並可查) SQL> conn / as sysdba Connected.
SQL> select count(*) from all_tables where owner='TEST';
COUNT(*)
52
SQL>
註:表名以及各詳細內容可以通過desc all_tables查看相應欄位,在查詢相應指啟內容。
3、user_tables(當前用戶下可查) SQL> conn test/test Connected.
SQL> select count(*) from user_tables;
COUNT(*)
52
SQL> conn matchhr/matchhr Connected.
SQL> select count(*) from user_tables;
COUNT(*)
28
SQL>
註:表唯桐如名以及各詳細內容可以通過desc user_tables查看相應欄位,在查詢相應內容。
❺ oracle里查出某個資料庫里的所有表名
方法和詳細的操作步驟如下:
1、第一步,
MySQL資料庫使用特定欄位查詢所有表名,代碼見下圖,轉到下面的步驟。
❻ 請問oracle資料庫中 怎麼查詢假設A用戶下的所有表表名及表中的索引名稱及索引欄位呢
查詢所有表名(以用戶HR為例):
1·登錄所要查詢的用戶然後指岩配賣令:select table_name from user_tables ;
2·登錄系統管理員用戶然後指令:select table_name from dba_tables where owner='HR';
查詢所有索引(以用戶hr為例):
登錄所要查詢粗逗的用戶然後指令:select user_indexes.index_name,user_indexes.index_type,user_indexes.table_owner from user_indexes ;
- ·登錄系統管理員用戶然後指賣渣令:SELECT index_name ,index_type ,owner FROM dba_indexes WHERE owner='HR' AND Table_owner='EMPLOYEES';
❼ oracle SQL語句表記錄中有表名的表查詢
不是,需要寫存儲過程,用execute immediat才能執嘩悉行動態的sql.
必須存儲過辯鏈程才能搞定哦.
首先定義一個變數接受 比如xm (班主任姓名).
然後select BZRXM into xm from from XSXX where XN='001';
然後定義一個字元串, sql ,
sql指的是'select * from '||xm
然後執行execute immediat(sql)才能實現你想要的.
具體存儲過程怎麼整,這里只是一個思路,具攜蘆孫體寫法俺得去看語法,不會
❽ 如何用sql語句,查詢所有表的名字(Oracle)
使用dba_tables,all_tables等都可以,如查找USERS表空間下的所有表:
select
owner,table_name,tablespace_name
from
all_tables
where
tablespace_name='USERS'
❾ oracle 怎樣查詢某用戶下的所有表的表名
select * from all_tab_comments -- 查詢所有用戶的表,視圖等。
select * from user_tab_comments -- 查詢本用戶的表,視圖等。
select * from all_col_comments --查詢所有用戶的表的列名和注釋。
select * from user_col_comments -- 查詢本用戶的表的列名和注釋。
select * from all_tab_columns --查詢所有用戶的表的列名等信息。
select * from user_tab_columns --查詢本用戶的表的列名等信碰灶息。
(9)oraclesql查詢表名擴展閱讀
ORACLE下有三個視圖笑衫扮
DBA_TABLES 擁有DBA角色的用戶可以查看系統中的所有表
USER_TABLES 登錄塌侍資料庫的當前用戶擁有的所有表
ALL_TABLES 登錄資料庫的當前用戶有許可權查看的所有表