當前位置:成語大全網 - 漢語詞典 - 數據字典的分類

數據字典的分類

在需求分析階段建立數據字典。

數據字典是壹個保留空間,壹個數據庫,用於存儲數據庫本身的信息。

數據字典可能包含的信息,例如:

數據庫設計數據

存儲的SQL程序

用戶權限

用戶統計

數據庫過程中的信息

數據庫增長統計

數據庫性能統計

數據字典是系統中各種數據描述的集合,是詳細數據收集和數據分析的主要結果。

壹個數據字典通常包括五個部分:數據項、數據結構、數據流、數據存儲和處理。

其中數據項是數據的最小單位,幾個數據項通過數據項和數據結構的定義可以組成壹個數據結構數據字典來描述數據流和數據存儲的邏輯內容。

數據字典是關於數據的信息的集合,即數據流圖中包含的所有元素的定義的集合。

數據字典還有壹層含義,是數據庫設計中使用的工具,用來描述數據庫中基本表的設計,主要包括字段名、數據類型、主鍵、外鍵等描述表的屬性的內容。

以Oracle數據庫字典為例:數據字典分為數據字典表和數據字典視圖。

Oracle數據庫字典通常在創建和安裝數據庫時創建。Oracle數據字典是Oracle數據庫系統的基礎。沒有數據字典的支持,Oracle數據庫系統無法完成任何工作。不能直接訪問數據字典中的表,但是可以訪問數據字典中的視圖。

數據字典表中的數據是存儲在Oracle系統中的系統數據,而普通表是用戶數據。為了方便區分這些表,這些表的名字都以$結尾,這些表屬於SYS用戶。

數據字典表是由$ Oracle _ home/RDBMS/admin/SQL . bsq腳本創建的,在這個腳本中調用其他腳本來創建這些數據字典表。用這些創建腳本中的基表創建SQL。

Oracle對數據字典表的描述:

這些基礎表存儲有關數據庫的信息。只有Oracle數據庫可以讀寫這些表。用戶很少直接訪問基表,因為它們是規範化的,並且大多數數據以加密格式存儲。

只有Oracle可以讀寫這些數據字典表。

SYS用戶下的這些數據字典表存儲在system表空間下,表名以$結尾。為了方便用戶查詢數據字典表,Oracle為這些數據字典建立了用戶視圖,便於記憶,隱藏了數據字典表之間的關系。對於這些對象的範圍,Oracle分別將視圖命名為DBA_XXXX、ALL_XXXX和USER_XXXX。

數據字典視圖分為兩類:靜態數據字典(靜態性能視圖)和動態數據字典(動態性能視圖)。

靜態數據字典中的視圖分為三類,由user_*、all_*和dba_*三個前綴組成。

User_*:該視圖存儲當前用戶擁有的對象的信息。(即該用戶模式下的所有對象)

All_*:此嘗試存儲當前用戶可以訪問的對象的信息,但不存儲當前用戶擁有的對象的信息。(與user_*相比,all_*不需要擁有對象,只需要擁有對象的訪問權。)

Dba_*:該視圖存儲數據庫中所有對象的信息。(前提是當前用戶有訪問這些數據庫的權限,壹般來說,他必須有管理員權限。)

這些視圖是由sys用戶創建的,因此需要添加SYS來使用它們。為了方便起見,Oracle為每個數據字典表的視圖標題建立了同名的公共同義詞。這個簡單的處理省去了編寫SYS的麻煩。

除了靜態數據字典中的三種視圖,其他的字典視圖主要是V$視圖,所以這樣叫是因為它們都是以V$或者GV$開頭的。這些視圖是不斷更新的,提供了內存和磁盤的操作信息,所以我們只能只讀訪問,不能修改。

在整個操作過程中,Oracle數據庫維護壹組記錄當前數據庫活動的虛擬表。這些視圖被稱為動態性能視圖,因為它們在數據庫打開和使用時會不斷更新。視圖,有時也稱為dV$視圖.

V$視圖基於X$虛擬視圖。V$ view歸SYS用戶所有。默認情況下,只有SYS用戶和具有DBA系統權限的用戶可以查看所有視圖。沒有DBA權限的用戶可以查看USER_和ALL_ views,但不能查看DBA_ views。與DBA_、ALL和USER_ views中面向數據庫的信息相反,這些視圖直觀地給出了面向實例的信息。

動態性能表用於記錄當前數據庫的活動,只存在於數據庫操作期間,實際信息取自內存和控制文件。DBA可以使用動態視圖來監控和調整數據。