程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 數據庫簡介

數據庫簡介

編輯:DB2教程

數據庫簡介


對這一方面的知識有一定的了解,不過還是有些混淆,最早認識的數據庫就是Access關系數據庫,那是Microsoft Office上最常用的用來保存數據的數據庫,在NCRE考試的時候也有過接觸,學過C++語言和C#語言後就知道基於C#語言的SQL Server是最強大和最全面的關系數據庫。

數據庫

數據庫(DB)是一個以某種有組織的方式存儲的數據集合。當人們收集了大量的數據後,應該把它們保存起來進一步的處理,進一步地抽取有用的信息。現在人們借助計算機和數據庫技術科學地保存了大量的數據,以便更好地利用這些數據資源。

數據庫系統

數據庫系統(DBS)是由數據庫及其管理軟件組成的系統,人們常把與數據庫有關 的軟件系統和硬件稱為數據庫系統。數據庫系統是采用數據庫技術的計算機系統,是由數據庫(數據),數據庫管理系統(軟件),數據庫管理員(人員),硬件平台(硬件)和軟件平台(軟件)5部分構成的運行實體。數據庫管理員是對數據庫進行規劃,設計,維護和監視等的專業管理人員,在數據庫系統中起著非常重要的作用。

數據庫體系結構

數據庫具有一個嚴謹的體系結構,這樣可以有效地組織,管理數據,提高數據庫的邏輯獨立性和物理獨立性。數據庫領域公認的標准結構是三級模式結構。

數據庫三級模式結構是指模式,外模式和內模式。

模式:模式也稱邏輯模式或概念模式,它是數據庫中全體數據的邏輯結構和特征的描述,是所有用戶的公共數據視圖。一個數據庫只有一個模式,模式處於三級結構的中間層。定義模式時不僅要定義數據的邏輯結構,而且要定義數據之間的聯系,定義與數據有關的安全性,完整性要求。

外模式:外模式也稱用戶模式,它是數據庫用戶(包括應用程序員和最終用戶)能夠看見額使用的局部數據的邏輯結構和特征的描述,是數據庫用戶的數據視圖,是與某一應用有關的數據的邏輯表示。外模式是模式的子集。一個數據庫可以有多個外模式。外模式是保證數據安全性的一個有力措施。

內模式:內模式也稱存儲模式,一個數據庫只有一個內模式。它是數據物理結構和存儲方式的描述,是數據在數據庫內部的表示方式。

三級模式之間的映射

為了能夠在內部實現數據庫的3個抽象層次的聯系和轉換,數據庫管理系統在三級模式之間提供了兩層映射。

外模式/模式映射:對於同一個模式可以有任意多個外模式,對於每一個外模式,數據庫系統都有一個外模式/模式映射。當模式改變時,由數據庫管理員對各個外模式/模式映射作相應的改變,可以使外模式保持不變。這樣,依據數據外模式編寫的應用程序就不用修改,保證了數據與程序的邏輯獨立性。

模式/內模式映射:數據庫只有一個模式和內模式,所以模式/內模式映射是唯一的,它定義了數據庫的全局邏輯結構與存儲結構之間的對應關系。當數據庫的存儲結構改變時,由數據庫管理員對各個模式/內模式映射作相應的改變,可以使模式保持不變,應用程序相應地也不作變動。這樣,保證了數據與程序的物理獨立性。

數據模型

數據模型是一種對客觀事物抽象化的表現形式。它對客觀事物加以抽象,通過計算機來處理現實世界的具體事物。它客觀地反應了現實世界,易於理解,與人們對外部事物描述的認識相一致。

數據模型是數據庫系統的核心和基礎,是描述數據與數據之間的聯系,數據的語義,數據一致性約束的概念性工具的結合。數據模型通常有數據結構,數據操作和完整性約束3部分組成。

數據結構:是對系統靜態特征的描述,描述對象包括數據的類型,內容,性質和數據之間的相互關系。

數據操作:是對系統動態特征的描述,是對數據庫中各種對象實例的操作。

完整性約束:是完整性規則的集合。它定義了給定數據模型中數據及其聯系所具有的制約和依存規則。

常見的數據模型

層次模型:用樹形結構表示實體類型及實體聯系的數據模型稱為層次模型,它具有的特點為:每棵樹有且僅有一個無雙親節點,稱為根;樹中除根以外所有節點有且僅有一個雙親。

網狀模型:用有向圖結構表示實體類型及實體間聯系的數據模型稱為網狀模型。用網狀模型編寫應用程序極其復雜,數據的獨立性差。

關系模型:以二維表來描述數據。在關系模型中,每個表有多個字段列和記錄行,每個字段列有固定的屬性(數字,字符,日期等)。關系模型數據結構簡單,清晰,具有很高的數據獨立性,因此是目前主流的數據庫數據模型。

關系模型的基本術語

關系:一個二維表就是一個關系。

元組:就是二維表中的一行,即表中的記錄。

屬性:就是二維表中的一列,用類型和值表示。

域:每個屬性取值的變化范圍。

關系數據模型的數據約束:

實體完整性約束:約束關系的主鍵屬性值不能為空值。

參照完整性約束:關系之間的基本約束。

用戶定義的完整性約束:它反映了具體應用中數據的語義要求。

關系數據庫的規范化

關系數據庫的規范化理論認為:關系數據庫中的每一個關系都要滿足一定的規范。根據滿足規范的條件不同:可以分為5個等級:第一范式(1NF),第二范式(2NF)......第五范式(5NF)。其中,NF是Normal Form的縮寫。一般情況下,只要把數據規范到第三范式標准即可滿足要求。

第一范式:在一個關系中,消除重復字段,且各字段都是最小的邏輯存儲單位。

第二范式:若關系模型屬於第一范式,則關系中每一個非主關鍵字段都要完全依賴於主關鍵字段,不能只部分依賴於主關鍵字段的一部分。

第三范式:若關系模型屬於第一范式,且關系中所有非主關鍵字段都只依賴於主關鍵字段。第三范式要求去除傳遞依賴。

關系數據庫設計原則

1數據庫內部數據文件的數據組織應獲取最大限度的共享,最小的冗余度,消除數據及數據依賴關系中的冗余部分,使依賴於同一個數據模型的數據達到有效的分離。

2保證輸入,修改數據時數據的一致性和正確性。

3保證數據與使用數據的應用程序之間的高度獨立性。

實體與關系

一對一關系:是指表A中的一條記錄確實在表B中有且只有一條相匹配的記錄。在一對一關系中,大部分相關信息都在一個表中。

一對多關系:是指表A中的行可以在表B中有許多匹配行,但是表B中的行只能在表A中有一個匹配行。

多對多關系:是指關系中每個表的行在相關表中具有多個匹配行。在數據庫中,多對多關系的建立是依靠第3個表(稱為連接表)實現的,連接表包含相關的兩個表的主鍵列,然後從兩個相關表的主鍵列創建與連接表中的匹配列的關系。

常見的關系數據庫

關系數據庫,是建立在關系數據庫模型基礎上的數據庫,是通過集合代數等概念和方法來處理數據的數據庫。

Access數據庫

Microsoft Accesss是當前流行的關系數據庫管理系統之一,其核心是Microsoft Jet數據庫引擎。通常情況下,安裝Microsoft Office時選擇默認安裝,Access數據庫就會被安裝到計算機上。Microsoft Accesss是一個非常容易掌握的數據庫管理系統,利用它可以創建,修改和維護數據庫和數據庫中的數據,並且可以利用向導來完成對數據庫的一系列操作。

SQL Server 2008

SQL Server數據庫系列歷經多次升級已經發展到SQL Server 2008,是迄今最強大和最全面的版本。我所學的數據庫就是這一種,在後面的博客會做詳細的介紹,在這裡就不做過多的說明了。

  Oracle數據庫

Oracle是以分部式數據庫為核心的一組軟件產品。 Oracle是目前世界上使用最為廣泛的關系數據庫。它具有完整的數據管理功能,包括數據的大量性,數據保存的持久性,數據的共享性,數據的可靠性。Oracle在並行處理,實時性,數據處理速度方面都有較好的性能。一般情況下,大型企業選擇Oracle作為後台的數據庫來處理海量數據。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved