自考“管理系統(tǒng)中計算機應用”課堂筆記(五)

字號:

2.3數據庫系統(tǒng)
    2.3.1數據庫的基本概念
    1.數據庫的基本術語
    (1)數據庫(DataBase,DB):以一定的方式將相關數據組織在一起并存儲在外存儲器上所形成的、能為多個用戶共享的、與應用程序彼此獨立的一組相互關聯的數據集合。
    (2)數據庫管理系統(tǒng):指幫助用戶建立、使用和管理數據庫的軟件系統(tǒng),簡稱為DBMS(DataBaseManagementSystem)。數據庫管理系統(tǒng)是數據庫系統(tǒng)的核心,DBMS通常由下列三個基本部分組成,即:
    ①數據描述語言DDL(DataDescriPtionLanguage)。用來描述數據庫、表的結構,供用戶建立數據庫及表。
    ②數據操作語言DML(DataManiPulationLanguage)。供用戶對數據表進行數據的查詢(包括檢索與統(tǒng)計)和存儲(包括增加、刪除與修改)等操作。
    ③其他管理和控制程序。實現數據庫建立、運行和維護時的統(tǒng)一管理、統(tǒng)一控制,從而保證數據的安全、完整,及多用戶并發(fā)操作。同時完成初始數據的輸入、轉換、轉存、恢復、監(jiān)控、通信,以及工作日志等管理控制的實用程序。
    (3)數據庫系統(tǒng)(DataBaseSystem):指以計算機系統(tǒng)為基礎,以數據庫方式管理大量共享數據的綜合系統(tǒng)。它一般由數據庫、計算機硬軟件系統(tǒng)、數據庫管理系統(tǒng)和用戶(最終用戶、應用程序設計員和數據庫管理員)四個部分構成。
    (4)數據庫應用系統(tǒng):是在數據庫管理系統(tǒng)(DBMS)支持下建立的計算機應用系統(tǒng),簡寫為DBAS.
    2.數據庫系統(tǒng)的特點
    數據庫系統(tǒng)和其他數據管理系統(tǒng)相比,有如下一些基本特點。
    (1)數據結構化。文件系統(tǒng)中,獨立文件內部的數據一般是有結構的,但文件之間不存在聯系,因此從數據的整體來說是沒有結構的。數據庫系統(tǒng)雖然也常常分成許多單獨的數據文件,并且文件內部也具有完整的數據結構,但是它更注意同一數據庫中各數據文件之間的相互聯系。
    (2)數據共享。共享是數據庫系統(tǒng)的目的,也是它的重要特點。一個數據庫中的數據,不僅可以為同一企業(yè)或組織的內部各部門共享,還可以為不同組織、地區(qū)甚至不同國家的用戶所共享。而在文件系統(tǒng)中,數據總是由特定用戶專用的。
    (3)數據獨立性。在文件系統(tǒng)中,數據結構和應用程序是相互依賴的,任何一方的改變總是要影響另一方。在數據庫系統(tǒng)中,這種相互依賴性是很小的,數據和程序具有相對的獨立性。
    數據庫模式主要分為物理結構和邏輯結構兩個方面。描述物理結構的稱為物理數據庫描述(或物理模式、內模式),它直接與操作系統(tǒng)或硬件相聯系。一個數據庫系統(tǒng)只有一個內模式。
    描述邏輯結構的稱為模式(或概念模式、邏輯模式),它是數據庫數據的完整表示,是所有用戶的公共數據視圖。一個數據庫系統(tǒng)只有一個模式,它總是以某一種數據模型為基礎,統(tǒng)一考慮所有用戶的要求,并有機地綜合成一個邏輯整體。模式僅僅是數據型的描述,不涉及具體數據值。模式的一組值稱為模式的一個實例,一個模式往往有許多的實例。模式是相對穩(wěn)定的,而實例是不斷變動的。因為模式反映的是數據庫的結構,一旦定義好基本上就不再變動;而實例反映的是數據庫某個時刻的狀態(tài),數據庫的數據是在不斷更新變化的。針對每一個用戶或應用,又由模式導出若干個子模式(或叫外模式、用戶模式)。子模式是直接面向用戶的,用戶能夠看見并使用的局部數據的邏輯結構描述。每一個子模式都是模式的一個子集;也可以把它看成是模式的一個窗口。一個數據庫系統(tǒng)可以有多個子模式。
    數據庫系統(tǒng)的三級模式中還提供了兩個映像功能:一個是在物理結構與邏輯結構之間的映像(轉換)功能;另一個是在邏輯結構與用戶結構之間的映像(轉換)功能。第一種映像使得數據庫物理結構改變時邏輯結構不變,因而相應的程序也不變,這就是數據庫的物理獨立性;第二種映像使得邏輯結構改變時,用戶結構不變,應用程序也不用改變,這就是數據和程序的邏輯獨立性。由于這種獨立性,使得應用程序的編寫再也不需要考慮數據的描述和存取問題,從而大大減少了應用程序的修改和維護工作。
    (4)可控冗余度。在文件系統(tǒng)中,由于每個應用都擁有并使用自己的數據,各數據文件中難免有許多數據相互重復,這就是冗余。數據庫系統(tǒng)是為了整個系統(tǒng)的數據共享而建立的,各應用的數據集中存儲、共同使用,盡可能地避免了數據的重復存儲,減少了數據的冗余。
    (5)統(tǒng)一的管理和控制。數據庫通過數據庫管理系統(tǒng)軟件包統(tǒng)一管理數據。由于多用戶共享數據,數據庫還具有安全性、完整性、并發(fā)性控制和數據恢復功能。
    2.3.2數據模型的基本概念
    1.模型的概念
    對現實世界事物特征的模擬和抽象就是這個事物的模型。在數據庫中數據模型是抽象的表示和處理現實世界中數據的工具。
    模型應當滿足以下要求:一是真實地反映現實世界;二是容易被人理解;三是便于在計算機上實現等。信息采用逐步抽象的方法,把數據模型劃分為兩類,以人的觀點模擬現實世界的模型叫做概念模型(或稱信息模型),以計算機系統(tǒng)的觀點模擬現實世界的模型叫做數據模型。
    2.概念模型
    概念模型就是概念層次的數據模型。它獨立于任何數據庫管理系統(tǒng),但是又很容易向數據庫管理系統(tǒng)支持的邏輯數據模型轉換。
    (l)基本術語
    實體:客觀存在,并且可以互相區(qū)別的事物。它可以是具體的物件,也可以是抽象的概念,還可以是某種聯系。
    屬性:實體具有的每一個特性都稱為一個屬性。屬性有“型”和“值”的概念,屬性的名稱(說明)就是屬性的“型”;對型的具體賦值就是屬性的“值”。
    碼:在眾多屬性中能夠惟一標識(確定)實體的屬性或屬性組的稱為實體的碼。
    域:屬性的取值范圍稱為該屬性的域。
    實體型:用實體名及描述它的各屬性名,可以刻畫出全部同質實體的共同特征和性質,它被稱為實體型。
    實體集:某個實體型下的全部實體,叫做實體集。
    聯系:一個實體集內部各實體之間的相互聯系,叫做實體內。
    (2)實體集內部的聯系。在一個實體集內部也存在著一對一、一對多和多對多的聯系。
    3.數據模型
    它分為邏輯數據模型和物理數據模型兩類。
    邏輯數據模型:是用戶通過數據庫管理系統(tǒng)看到的現實世界,它描述了數據庫數據的整體結構。邏輯模型通常由數據結構、數據操作和數據完整性約束三部分概念組成。數據結構是對系統(tǒng)靜態(tài)特性的描述,人們一般以數據結構的類型來命名數據模型,如層次模型、網狀模型、關系模型、面向對象模型等。
    物理數據模型:是用來描述數據的物理存儲結構和存儲方法的。它不但受數據庫管理系統(tǒng)控制,而且與計算機存儲器、操作系統(tǒng)密切相關。
    (l)層次模型。層次數據庫的特點是實體之間按層次關系部定義。實體用記錄(類型)表示,實體的屬性對應記錄的數據項;實體之間的聯系用有向連線表示。
    層次模型以每個實體為結點,上層結點叫做父結點,下層結點叫做子結點。層次模型像一棵倒置的樹,最上層的結點沒有雙親,稱為根結點;最下層的結點沒有子女,稱為葉結點。所以層次模型是一種以記錄類型為結點的有向樹結構。
    (2)網狀模型。由于層次模型還不能很好地表達實體間的復雜關系(多對多聯系),于是又產生了網狀模型,它很好地解決了實體間復雜關系的表達問題,但是它也有致命的弱點,即當需求擴展時,對原有數據結構及應用程序的修改會產生嚴重的后果。
    (3)關系模型。關系模型以人們經常使用的表格形式作為基本的存儲結構,通過相同關鍵字段來實現表格間的數據聯系。
    (4)面向對象模型。不同于層次模型、網狀模型、關系模型這些傳統(tǒng)的數據模型,面向對象數據模型是非傳統(tǒng)的數據模型。將面向對象程序設計方法與數據庫技術相結合就產生了面向對象數據庫系統(tǒng)。
    2.3.3關系模型與關系數據庫
    1.關系模型
    關系模型是一種新的數據模型。它建立在集合論和謂詞演算公式的基礎上。它提供的邏輯結構簡單,數據獨立性強,存取具有對稱性、操縱靈活。
    在數據庫中的數據結構如果依照關系模型定義,就是關系數據庫系統(tǒng)。關系數據庫系統(tǒng)由許多不同的關系構成,其中每個關系就是一個實體,可以用一張二維表表示。
    關系二維表中的術語解釋如下:
    。關系(Relation):一張二維表對應一個關系。
    。屬性(Attribute):表中每一列叫做一個屬性,屬性有名和值的區(qū)別。
    。元組(Topl):由屬性值組成的每一行叫做一個元組。
    。框架(rramework):由屬性名組成的表頭稱為框架(關系型)。
    。分量:表中的每一個屬性值。
    。域(Domain):每個屬性的取值范圍。
    。候選碼(CandidateKey):可以惟一確定的一個元組的屬性或屬性組(可簡稱碼)。
    。主碼(PrimaryKey):一個關系中往往會有多個候選碼,可以指定一個為主碼。
    。主屬性(PrimaryAttribute):可以作為候選碼的屬性也叫主屬性。
    。非主屬性(Non-keyAttribute):不能作為候選碼的屬性叫做非主屬性。
    。關系模式:對關系的描述稱為關系模式,常常記做:
    關系名(屬性1,屬性2,屬性3,……,屬性n)
    在關系模型中,不但實體用關系表示,而且實體之間的聯系也用關系來表示。
    關系模型要求關系必須是規(guī)范化的,即要求每個關系必須滿足一定的條件,其中最基本的一條就是,關系中每個分量必須是不可再分的基本項。
    作為一個關系模型的基本約束條件,起碼必須具備以下幾條:
    。表格中每一數據項不可再分,是基本項。
    。每一列數據有相同的類型,叫做屬性。各列都有惟一的屬性名和不同的屬性值,列數可根據需要而設定。
    。每列的順序是任意的。
    。每一行數據是一個實體諸多屬性值的集合,叫做元組。一個表格中不允許有完全相同的行出現。
    。各行順序可以是任意的。
    2.關系操作
    關系數據模型的理論基礎是集合論,每一個關系就是一個笛卡爾積的子集。
    (1)傳統(tǒng)集合運算。傳統(tǒng)集合運算有并、交、差三種。
    (2)專門的關系運算。專門的關系運算主要有選擇(篩選)、投影和連接三種。選擇運算是對關系表中元組(行)的操作,操作結果是找出滿足條件的元組。其中,
    投影運算是對關系表中屬性(列)的操作,操作結果是找出關系中指定屬性全部值的子集。
    選擇運算和投影運算可以同時用一條命令來實現。
    連接運算是對兩個關系的運算,操作結果是找出滿足連接條件的所有元組,并且拼接成一個新的關系。完善的關系數據庫管理系統(tǒng)總是以數據操縱語言及結構化查詢語言(SQL),來實現各種關系運算。
    2.3.4VsualFoxpr數據庫管理系統(tǒng)
    1.VFP的基本概念
    (l)數據表。數據表簡稱為表,是VFP中最重要的操作對象。一個表就是一個關系,它總是以文件的形式存放在計算機的外存儲器中。表文件的存取名稱就是關系名,文件的擴展名是DBF.
    (2)數據庫。在VFP中一張二維表稱為一個數據表(或者簡稱表)。在關系數據庫中,可以包含若干個表(以及視圖)。數據庫也可作為一個文件存放在計算機外存儲器中,其擴展名是DBC.
    (3)索引。索引實際上是對數據表的排序,但是它不改變數據表中數據的物理順序,而是另外建立一個索引對應列表。
    (4)關鍵字。關系中的碼在數據表中一般叫做關鍵字,主碼叫做主關鍵字。因為在數據表中,屬性叫做字段,所以關鍵字就是能夠惟一標識一條記錄的字段或字段組合。如果一個字段不能成為當前表的關鍵字,但卻是另一個數據表的關鍵字,那么這個字段就稱為外來關鍵字。
    (5)視圖。視圖是一種特殊類型的表,它往往由一個或多個表(或視圖)中的部分字段或部分記錄組成。但是視圖并不是一個完整的數據集合,只是在數據庫中存放了相應的關系。
    (6)存儲過程。存儲過程實際上是封裝在數據庫中的一個命令(程序)文件。其中可以包含系統(tǒng)為實現數據庫中數據的保護、安全、鏈接、查詢、視圖及關聯等功能,而自動或人為設計的若干程序過程段及函數等。(以上內容僅供參考)