資料字典問題

2021-07-23 08:59:43 字數 1986 閱讀 5981

資料字典

作用:幫助使用者了解當前資料庫的一些資訊或是物件的資訊或是使用者的資訊.

1.資料字典在資料庫被建立時建立的。

2.資料字典中的資料被資料庫伺服器自動更新和維護   

常見的資料字典(它們都是檢視)

user 開頭的檢視裡面存放著使用者自己擁有的物件

all     開頭的檢視存放著使用者有許可權檢視的物件

dba    開頭的檢視存放著資料庫所有的物件

v$       開頭的檢視存放資料庫執行的一些效能屬性資料

//查詢使用者擁有的所有表的名字

select table_name from user_tables;
//查詢使用者物件表,找出物件型別是table型別的物件名字

//table view sequence index synonym等都是oracle中的物件

//注意字串的值是區分大小寫的

select object_name

from user_objects

where object_type = upper('table');

//查詢使用者物件表,找出物件型別都有哪些
select distinct object_type

from user_objects;

//查詢出s_emp表中的列及其對應的約束名字
select constraint_name,column_name

from user_cons_columns

where table_name = 's_emp';

//查詢出s_emp表中的約束名字
select    constraint_name

from user_constraints

where table_name = 's_emp';

2、以all開頭的資料字典:  包含當前使用者有許可權訪問的所有物件的資訊

//檢視當前使用者有許可權訪問的物件       

select table_name from all_tables;

//只能是有dba許可權的使用者查詢,能查到資料庫中所有物件select table_name from dba_tables; (sys system)

其他檢視:dictionary

dictionary檢視中只有倆列:

table_name表示當前表的名字

comments表示對這個表的描述

sql> desc dictionary
名稱

-----------------------------------------

table_name

comments

如下進行對dictionary進行查詢

select *

from dictionary

where table_name='user_tables';

select *

from dictionary

where table_name='all_tables';

select table_name

from dictionary

where table_name like 'user%';

select table_name

from dictionary

where table_name like 'all%';

select table_name

from dictionary

where table_name like 'v$%';

關於資料字典

1 什麼是資料字典 data dictionary 應該承認,每個人對資料字典的理解有不同的地方,因為並沒有這方面的標準,下面是三個大同小異的定義 1 資料字典是以資料庫中資料基本單元為單位,按一定順序排列,對其內容作詳細說明的資料集。2 資料字典中存放著系統中所有資料的定義,即對所有資料庫結構的描...

Oracle 資料字典

資料字典包括以下內容 1.所有資料庫schema物件的定義 表,檢視,索引,聚簇,同義詞,序列,過程,函式,包,觸發器 2.資料庫的空間分配和使用情況 3.欄位的預設值 4.完整性約束資訊 5.oracle使用者名稱,角色,許可權等資訊 6.審計資訊 7.其他資料庫資訊 資料字典有4部分組成 內部r...

oracle 資料字典

oracle資料字典 select from user tab columns 檢視使用者列物件 select from user tab comments 檢視使用者表的備註 select from user tab statistics select from all users 所有使用者 s...