




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro5.1 數據庫技術的重要性在現實生活
2、中,庫是隨處可見的,例如 書庫 金庫 倉庫 設立各種各樣庫的目的,一是存放東西,二是方便查找,所以存放的東西一定要按某種規則存放。數據庫顧名思義就是存放數據的倉庫,但數據庫對數據的存放不是簡單的堆積,而是經過了科學的管理和組織,使其便于查找和處理。那么,為什么要發展數據庫技術呢? 從20世紀50年代開始,計算機的應用由科學計算逐漸擴展到企業、行政等社會各領域,數據及事務處理成為計算機的主要應用。有人統計,在科學計算、數據處理和過程控制這計算機三大應用中,數據處理所占比例為70%左右。5.1 數據庫技術的重要性那么,為什么要發展數據庫技術呢? 計算機的作用已經不再僅僅是進行數值近似,更多的是用于
3、數據的加工和管理。例如, 圖書資料的管理 天文氣象觀測數據的管理 銀行帳目的管理 行政事務的管理等這些應用的主要目的是對各種類型的數據進行綜合、分析和加工,計算則居于次要位置。這些數據的特點是數據量龐大、結構比較復雜,所以需要探求新的、更為有效的處理方法。5.1 數據庫技術的重要性數據庫是20世紀60年代末發展起來的計算機數據處理的最新技術,它的產生使計算機應用進入到人類社會中的經濟、貿易、生產、政務等各個領域,已經成為各級政府、各個企業信息管理的重要手段。數據庫技術是計算機科學技術中發展最快的領域之一,也是計算機應用領域中最成功的一個方面。5.1 數據庫技術的重要性當前: 面向對象數據庫、
4、多媒體數據庫、 并行數據庫、 有著廣泛的應用 空間數據庫、 工程數據庫 未來社會是信息化社會,信息已經變成經濟發展的戰略資源,而數據庫是信息化社會資源管理與開發利用的基礎。因此,數據庫的建設規模和應用水平已經成為衡量一個國家信息化程度的重要標志。5.1 數據庫技術的重要性第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro5.2 數據庫技術的基本概念5.2.1 信息5
5、.2.2 數據5.2.3 信息與數據的關系5.2.4 數據處理5.2.5 數據管理5.2 數據庫技術的基本概念5.2.1 信息5.2.2 數據5.2.3 信息與數據的關系5.2.4 數據處理5.2.5 數據管理5.2.1 信息一般來說,信息是客觀世界的事物在人們頭腦中的抽象反映,是通過人的感官感知并對客觀事物狀態、特性、特征的描述。 信息具有許多重要的特點: 信息來源于現實世界;信息是可以被感知和理解的;信息是可以被加工、存儲、檢索、應用、傳遞和再生的。 這些特點構成了信息最重要的自然屬性。5.2 數據庫技術的基本概念5.2.1 信息5.2.2 數據5.2.3 信息與數據的關系5.2.4 數據
6、處理5.2.5 數據管理5.2.2 數據從本質上說,數據是對客觀事物特征的一種抽象的、符號化的表示,即用一定的符號表示那些從觀察或測量中所收集到的基本事實,是可以識別的信息。數據是數據庫系統研究和處理的對象。5.2.2 數據值得注意的是,不要把數據僅僅理解成“數字”。除了普通意義上的數字外,還包括: 字符圖形圖像聲音甚至是程序員編寫的源程序它是編譯程序所使用的數據,只是數據類型不同。所以,從更廣泛意義上講,數據是所有能輸入到計算機中并被計算機程序處理的符號的集合。5.2 數據庫技術的基本概念5.2.1 信息5.2.2 數據5.2.3 信息與數據的關系5.2.4 數據處理5.2.5 數據管理5.
7、2.3 信息與數據的關系信息與數據是既有聯系又有區別的,二者密不可分。 未經處理的信息只是基本素材,只有通過消化、解釋或處理的信息對人們來說才是有用的數據。數據是信息存在的一種形式。數據表示了信息,是信息的載體。信息是數據的內涵,數據則是表示信息的一種手段。5.2.3 信息與數據的關系信息與數據是既有聯系又有區別的,二者密不可分。 同時,信息是抽象的,不隨數據設備所決定的數據形式而改變,但數據的表示方式卻具有可選擇性。盡管信息與數據兩者在概念上不盡相同,但通常人們并不嚴格去區分它們,例如,數據處理一般也稱為信息處理。5.2 數據庫技術的基本概念5.2.1 信息5.2.2 數據5.2.3 信息與
8、數據的關系5.2.4 數據處理5.2.5 數據管理5.2.4 數據處理當把客觀事物表示成數據后,這些數據便被人們賦予了特定的含義,從而為人們提供了不必直接觀察和度量事物就可以獲得有關信息的手段。數據處理基本含義是從某些已知的數據出發,推導出一些新的數據,這些新的數據又表示了新的信息。數據處理的目的就是根據人們的需要,從大量的數據中抽取出對人們來說是特定的、有意義有價值的數據,并作為決策和行動的依據,它是對數據進行采集、整理、分類、存儲、檢索、統計、維護和傳輸等一系列活動的總稱。5.2 數據庫技術的基本概念5.2.1 信息5.2.2 數據5.2.3 信息與數據的關系5.2.4 數據處理5.2.5
9、 數據管理5.2.5 數據管理數據管理指的是對數據的 分類 組織 編碼 定位 存儲 檢索 維護它是數據處理的中心問題,并且是任何數據處理業務中必不可少的共同部分。可見,數據管理技術的優劣,直接影響數據處理的效率。第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro5.3 數據庫管理技術的發展歷程過去,各種數據都是以書面形式保存在紙上,這樣做的優點是直觀,但也有諸如 占
10、用空間大 耗費人力大 查找不方便 等缺點。 不安全、 保密性差自從電子數字計算機問世以來,數據管理隨著計算機軟件和硬件的發展而發展,大體上經歷了3個階段:人工管理階段、文件系統階段、數據庫系統階段。5.3 數據庫管理技術的發展歷程5.3.1 人工管理階段5.3.2 文件系統階段5.3.3 數據庫系統階段5.3 數據庫管理技術的發展歷程5.3.1 人工管理階段5.3.2 文件系統階段5.3.3 數據庫系統階段5.3.1 人工管理階段 人工管理階段是數據管理的初始階段,可以說是管理的最低級階段。這一階段主要在20世紀50年代中期以前。當時計算機的發展剛剛起步,主要應用領域是科學計算,數據量不大。
11、從硬件方面看,計算機內存空間小,計算速度低;外存只有磁帶、卡片、紙帶等,沒有像磁盤等這樣的隨機存取的存儲設備。從軟件方面看,計算機沒有操作系統,更沒有數據管理軟件,數據管理者是人。5.3.1 人工管理階段人工管理階段數據管理的特點是:(1)數據不保存 由于當時計算機主要用于科學計算,側重于提高計算的速度和精度,相對而言,數據量較少,一般不需要將數據長期保存,數據一經用完,立刻撤走。在進行某一課題研究時,將原始數據輸入計算機,運算處理完成后將結果輸出。隨著任務的完成,用戶作業退出計算機系統,數據空間也隨之釋放。5.3.1 人工管理階段人工管理階段數據管理的特點是:(2)人工管理數據 由于當時沒有
12、相應的軟件系統對數據進行管理,應用程序中涉及的數據由程序員自己管理,即人工對數據進行管理。這樣,程序員不僅需要規定數據的邏輯結構,而且在程序中還要設計其物理結構(包括存儲結構、存取方法、輸入輸出方式等),并通過物理地址來存儲數據。5.3.1 人工管理階段人工管理階段數據管理的特點是:(3)數據與程序不具有獨立性程序往往是和數據結合從而成為一個有機的整體,這時,數據作為程序不可缺少的一部分而存在,這就導致程序與數據密切相關,即數據與程序不具有獨立性。程序高度依賴于數據的結果是,數據在存儲位置上若稍有變動,整個程序就必須全部進行修改,編程效率低,程序不靈活而且容易出錯。5.3.1 人工管理階段人工
13、管理階段數據管理的特點是:(4)數據面向應用數據是面向應用的,即一組數據只能對應于一個程序,一個程序的數據不能被另一個程序所使用。但各應用程序處理的數據不會全無關系,當多個應用程序涉及某些相同的數據時,由于必須各自定義,無法相互利用、互相參照。所以程序與程序之間就會有大量重復的冗余數據,即數據不具備共享性。5.3.1 人工管理階段人工管理階段應用程序與數據之間的對應關系圖如圖5.1所示。圖5.1 人工管理階段應用程序與數據之間的對應關系 5.3 數據庫管理技術的發展歷程5.3.1 人工管理階段5.3.2 文件系統階段5.3.3 數據庫系統階段5.3.2 文件系統階段這一階段大約是在20世紀50
14、年代后期至60年代中期。從硬件方面看,計算機內存空間增大,計算速度得到了很大的提高,外存儲器有了磁盤、磁鼓等快速、直接存取的存儲設備。5.3.2 文件系統階段同時,計算機的應用范圍不斷擴大,不僅用于科學計算,還大量用于管理。由于數據量的增加, 數據的存儲 檢索和 維護 成為非常迫切的任務。這樣,導致了數據結構和數據管理軟件的迅速發展。軟件方面出現了高級語言和操作系統,且操作系統中已經有了專門管理外存的數據管理軟件文件系統。5.3.2 文件系統階段這一時期數據管理的特點是:(1)數據可以長期保留由于計算機大量用于數據處理方面,這樣,數據就需要長期保留在外存上以便反復使用。能夠將一批數據以一個文件
15、的形式保存在磁盤等外存儲器上,為數據的長期保存和反復使用(插入、查詢、刪除、修改等)提供了保證。 5.3.2 文件系統階段這一時期數據管理的特點是:(2)文件系統提供了程序與數據之間的存取方法 文件管理方式是把待加工處理的數據組織成數據文件,文件可以命名,一旦命名以后,程序中便可以通過文件名邏輯性地存取文件中的數據,解脫了程序員直接與物理設備打交道的沉重負擔。 5.3.2 文件系統階段這一時期數據管理的特點是:(2)文件系統提供了程序與數據之間的存取方法 當然,二者之間需要一個轉換過程,這是由文件系統自動完成的。即文件管理系統作為程序和數據之間的一個接口,擔負著數據的邏輯組織到物理組織之間的映
16、射任務,程序中不再涉及任何物理細節。 5.3.2 文件系統階段這一時期數據管理的特點是: (3)文件類型多樣化 由于有了直接存取設備,也就出現了順序文件、索引文件和隨機文件等多種文件組織形式,對文件的訪問呈現多樣化。5.3.2 文件系統階段這一時期數據管理的特點是: (4)程序與數據具有一定的獨立性 利用“按文件名訪問,按記錄進行存取”的管理技術,使得程序與數據具有了一定的獨立性,這樣程序員可以集中精力于算法上,而不必過多地考 慮物理細節,并且數據在存儲位置上的改變不一定反映在主程序上,這樣可以大大節省維護程序的工作量。但文件結構的設計仍然基于特定的用途,程序基于特定的物理結構和存取方法,因此
17、,程序與數據結構之間的依賴關系并未根本解決。5.3.2 文件系統階段這一時期數據管理的特點是: (5)數據冗余度較大文件系統階段的文件仍然由應用程序來定義,當不同的應用程序具有部分相同的數據時,也必須建立各自的數據文件。所以,此時也存在著數據冗余度大、空間浪費、文件不易擴充、修改費時間等問題。5.3.2 文件系統階段這一時期數據管理的特點是: (6)數據面向應用雖然文件系統階段的數據管理與人工管理階段相比有了很大的改進,但是,仍然存在著很大的弱點,即文件本身基本上還是對應于一個或幾個應用程序,或者說數據還是面向應用的。5.3.2 文件系統階段文件系統階段的應用程序與數據之間的對應關系如圖5.2
18、所示。圖5.2 文件系統階段應用程序與數據之間的對應關系 5.3 數據庫管理技術的發展歷程5.3.1 人工管理階段5.3.2 文件系統階段5.3.3 數據庫系統階段5.3.3 數據庫系統階段針對文件方式的弊端,從20世紀60年代后期開始出現了數據庫技術。 數據庫技術的目標:首先是克服程序與文件的相互依存,力求數據獨立;其次是重在表現數據之間的聯系,還要克服數據的冗余,并解決數據安全性和完整性保護問題。5.3.3 數據庫系統階段數據庫是當今計算機系統的一個重要組成部分,我們很難用幾句話嚴格、簡明地概括它的全部特征。事實上,現在數據庫的定義也是各式各樣、不盡相同的,這是人們從不同角度用不同觀點來看
19、待數據庫的結果。產生這種情況的另一個原因是數據庫技術本身是逐漸形成的,而且直到今天還在發展之中,從而人們對它的認識也是一個歷史的發展過程。我們只能從數據管理的進展指出數據庫的特點,給數據庫一個輪廓性的描述。5.3.3 數據庫系統階段從20世紀70年代以來,計算機被越來越多地應用于管理領域。人們稱現代社會是一個信息化社會,數據量急劇增漲,管理規模更加龐大,人們對數據共享的要求更為強烈(共享的含義是多種應用、多種語言互相覆蓋地共享數據集合,如圖5.3所示)。 從硬件上看,隨著大規模集成電路的發展,計算機硬件價格大大下降,計算速度更快,且逐漸出現大容量的磁盤、光盤等直接存取設備。 但同時軟件的價格卻
20、在不斷上升,以文件系統作為數據管理的方法已經不能滿足實際應用的需要。 為了滿足多用戶、多應用共享數據的需求,使數據為盡可能多的應用服務,軟件上出現了數據庫這樣的數據管理技術,并出現了對數據進行統一管理的專門軟件數據庫管理系統。程序A程序B程序C程序D圖5.3 數據共享示意圖 5.3.3 數據庫系統階段數據庫技術發展到今天,已經是一門成熟的技術。無論是從數據庫的技術水平,還是從數據庫的應用水平,今天與過去不可同日而語,但數據庫的基本特征沒有變。 5.3.3 數據庫系統階段概括起來,數據庫技術有如下一些特點。 (1)數據結構化,這是數據庫的主要特征之一數據庫有復雜的數據模型(數據結構),如 網狀模
21、型 樹狀模型 關系模型可以變長記錄格式存儲數據,這樣可以大大減少數據的冗余度、節省空間、減少存取時間。5.3.3 數據庫系統階段(1)數據結構化數據的冗余有時難以避免,甚至有時為了某種需要有意地重復存儲數據而帶來其他方便。所以,我們只說“減少”數據的冗余而不提“避免”數據的冗余。 5.3.3 數據庫系統階段概括起來,數據庫技術有如下一些特點。 (2)數據庫設計時面向數據模型對象設計數據庫時要站在全局需要的角度,抽象和組織數據要完整、準確地描述自身和數據之間聯系要建立適合整體需要的數據模型。數據庫系統是以數據模型為基礎的,各種應用程序都建立在數據庫之上,這就決定了它的設計特點,即先設計數據庫,再
22、設計程序功能。5.3.3 數據庫系統階段概括起來,數據庫技術有如下一些特點。 (3)數據的獨立性這是數據庫的另一個主要特征。由于數據庫管理系統使得數據的定義從程序中分離出去,加上數據的存取也由數據庫管理系統負責。所以,數據和程序之間具有較高的獨立性。從而簡化了應用程序的編制,大大減少了應用程序開發、維護和修改費用。5.3.3 數據庫系統階段概括起來,數據庫技術有如下一些特點。 (4)數據共享度高數據庫是從整體角度看待和描述數據,因而,數據庫中同樣的數據不會多次重復出現。數據是面向整個系統,是有結構的數據,不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得數據庫系統彈性增大,易于擴充,可
23、以適合各種用戶的需求。5.3.3 數據庫系統階段計算機的共享一般是并發的(concurrency)即許多用戶同時使用數據庫,數據庫系統通過數據模型和數據控制機制來提高數據的共享性。因此,都提供了以下3方面的數據控制功能:數據的安全性指保護數據以防止不合法的使用,可以采用口令以及核實用戶身份和檢查用戶權限等方法,檢查通過才能執行允許的操作;完整性包括數據的正確性、有效性、相容性,即系統有檢驗措施,以控制數據在一定范圍內有效;并發控制避免并發程序之間互相干擾。5.3.3 數據庫系統階段概括起來,數據庫技術有如下一些特點。 (5)數據存取粒度小 在數據庫系統中,數據存取的最小粒度(即數據存取的最小單
24、位)是數據項,可以使系統在 查詢 更新 修改 刪除 統計 等操作時,能以數據項為單位進行條件表達和數據存取處理,為系統帶來高效性、靈活性和方便性。5.3.3 數據庫系統階段概括起來,數據庫技術有如下一些特點。 (6)數據面向系統從整體上看,數據不是面向應用,而是面向系統。應用數據時可以有很靈活的方式。例如,可以取整體數據的各種合理子集應用于不同的系統,而當應用需求改變時,只要重新選取不同的子集即可滿足新的需求。5.3.3 數據庫系統階段綜上所述,可以說數據庫是個通用化的綜合性的數據集合,它可以為各種用戶提供數據共享,并使數據具有最小的冗余度以及使數據與程序具有較高的獨立性,而且由于多種程序并發
25、地使用數據庫,所以,應能有效地及時處理數據,并提供安全性和完整性保證。 要做到上述各點,當然必須有一個軟件系統數據庫管理系統DBMS(Database Management System)在建立、運行和維護時進行集中控制。 5.3.3 數據庫系統階段 數據庫系統階段應用程序和數據之間的對應關系如圖5.4所示。圖5.4 數據庫系統階段應用程序和數據之間的對應關系 第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數
26、據庫理論基礎及關系數據庫管理 系統FoxPro5.4 數據庫管理系統數據庫管理系統(DBMS)是數據庫系統的核心,是用于建立、使用和維護數據庫的一組軟件。一般情況下,數據庫管理系統建立在操作系統基礎之上,是位于操作系統與用戶之間的一層數據管理軟件,負責接受和響應用戶對數據庫的訪問要求,以及對數據進行統一的管理和控制,數據庫內的所有活動都是在其控制之下進行的。5.4 數據庫管理系統數據庫管理系統分為多個程序模塊,每個程序模塊實現數據庫系統的一種功能。數據庫管理系統不僅承擔執行各種應用程序對數據庫中的數據的操作命令,還有承擔數據庫的維護工作,以保證數據庫的安全性和完整性。5.4 數據庫管理系統數據
27、庫管理系統的功能隨系統而異,一般來說,它包括以下幾個方面。(1)數據庫定義功能定義數據庫,包括全局邏輯數據結構的定義,局部邏輯數據結構的定義,存儲結構定義,保密定義以及信息格式定義等。5.4 數據庫管理系統數據庫管理系統的功能隨系統而異,一般來說,它包括以下幾個方面。(2)數據庫建立和維護功能,包括數據庫的建立,數據庫初始數據的載入、轉換,數據庫更新,數據庫的轉儲和數據庫恢復,數據庫再組織,數據庫結構維護以及性能監視等。5.4 數據庫管理系統數據庫管理系統的功能隨系統而異,一般來說,它包括以下幾個方面。(3)數據庫操作功能 數據庫管理系統提供數據操作語言實現對數據庫中的數據的基本操作,包括檢索
28、、插入、刪除、修改、更新、統計等。5.4 數據庫管理系統數據庫管理系統的功能隨系統而異,一般來說,它包括以下幾個方面。(4)數據庫運行控制功能,包括系統控制、數據存取及更新管理、數據完整性及安全性控制和并發控制等。 所有數據庫的操作都要在這些控制程序的統一管理下進行,以保證數據庫的正確、有效。5.4 數據庫管理系統數據庫管理系統的功能隨系統而異,一般來說,它包括以下幾個方面。(5)數據通信功能提供數據庫管理系統與其他軟件系統進行通信的功能,具備與操作系統的聯機處理、分時系統以及遠程作業輸入的相應接口。第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技
29、術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro5.5 數據庫的安全與保護數據庫的應用越來越廣泛,存儲的信息越來越有價值。一旦這些信息暴露,其后果不可設想。數據庫的特點之一是:為了保證數據的安全可靠,數據庫管理系統必須提供統一的數據保護功能。數據庫系統的安全性保護措施是否有效是數據庫系統主要的性能指標之一。數據保護主要指數據的:安全性完整性并發控制等3個方面,下面我們對它們做一簡單的介紹。5.5 數據庫的安全與保護5.5.1 安全性5.5.2 完整性5.5
30、.3 并發控制5.5.4 數據庫的恢復5.5 數據庫的安全與保護5.5.1 安全性5.5.2 完整性5.5.3 并發控制5.5.4 數據庫的恢復5.5.1 安全性數據庫中的數據是在數據庫管理系統統一控制之下的共享數據集合,但它又不是任何人都可以隨意訪問和使用的。也就是說,數據庫的共享不能是無條件的共享,它只允許有合法使用權限的用戶訪問他有權訪問的數據。數據庫的安全性是指保護數據庫以防止不合法的應用而造成數據泄露、更改和破壞。5.5.1 安全性安全性問題并不是數據庫系統所獨有的,計算機系統都存在這個問題,只是在數據庫中大量數據集中存放,而且為各用戶直接共享,從而使得安全性問題更為突出。5.5.1
31、 安全性1. 用戶標識和鑒別2. 存取控制3. 跟蹤調查 一般來說,在計算機系統中為提高安全性常采取如下一些措施。 5.5.1 安全性1. 用戶標識和鑒別2. 存取控制3. 跟蹤調查1. 用戶標識和鑒別用戶標識和鑒定是系統提供的最外層安全保護措施。首先,系統提供一定的方式讓用戶標識自己的名字或身份,系統進行核實,鑒定通過后方獲得機器使用權。然后,進一步核實用戶往往需要用戶輸入口令,口令是一種使用廣泛的保護方法。用戶的口令相當于打開數據庫管理系統的鑰匙,所以,為保密起見,口令常常被隱蔽,不在終端上顯示出來。為了防止有人猜測口令,很多系統限制了每次口令的輸入次數,如果超過了這個次數,系統將拒絕該用
32、戶進入系統。1. 用戶標識和鑒別用戶標識和鑒定是系統提供的最外層安全保護措施有時將用戶的個人持有物作為用戶身份的標識證明,包括磁卡、IC卡、光卡等,在這些標識上可以記錄個人的信息,以便于計算機識別。此外,還可以利用用戶的物理特征鑒別用戶。例如,聲音、容貌、指紋等都可以作為鑒別用戶身份的物理特征。5.5.1 安全性1. 用戶標識和鑒別2. 存取控制3. 跟蹤調查2. 存取控制存取控制是數據庫管理系統級的安全措施,也是杜絕對數據庫中的數據進行非法訪問的主要方法。存取控制允許用戶只訪問被授權的數據,以及限定不同的用戶有不同的訪問模式,以保證用戶的操作是合法的操作。即對于獲得上機權的用戶還要進一步根據
33、用戶權限分類,系統根據用戶權限執行存取控制。所謂用戶權限是指不同的用戶對于不同的數據對象允許進行的操作權限。2. 存取控制用戶權限有以下幾種。(1)基本存取權限又可分為只讀、讀/寫等。(2)數據檢索和處置僅限又可分為檢索、插入、刪除、修改以及它們的某種組合。2. 存取控制用戶權限有以下幾種。(3)獨立于數據值或與數據值有關的存取權限 所謂獨立于數據值就是指用戶能否存取某個數據的權限與數據本身的內容無關。例如:用戶不能存取任何職員的工資,不管工資額的大小如何。反之,若依賴于用戶本身的數據內容或數據對象的內容則稱為是與數據有關的,例如:用戶U不能查詢工資高于200元的職工工資,或者若用戶的行政級別
34、低于16級,則不能查詢別人的工資。(4)與時間和地點有關的存取權限例如,限制某臺終端在某段時間內存取有關數據。5.5.1 安全性1. 用戶標識和鑒別2. 存取控制3. 跟蹤調查3. 跟蹤調查上面所介紹的數據庫安全性保護措施都是正面的預防性措施,它防止非法用戶進入數據庫進入管理系統,并從數據庫系統中竊取或破壞保密的數據。而跟蹤調查則是一種事后監視的安全性保護措施。例如,使用日志監視數據庫活動,日志中記載日期、時間、程序名、地點、所存取的數據等項目。這個日志由數據庫管理員監督檢查,對于可疑的存取、或者對于高度機密數據的存取都要進行調查。5.5 數據庫的安全與保護5.5.1 安全性5.5.2 完整性
35、5.5.3 并發控制5.5.4 數據庫的恢復5.5.2 完整性數據庫的完整性是指: 數據的正確性 數據的一致性 數據的相容性 保護數據庫的完整性非常重要,它涉及到數據庫能否真實地反映現實世界。 5.5.2 完整性數據庫管理系統必須提供一種功能(也稱完整性檢查)來保證數據庫中數據的完整性,即檢查數據庫中的數據是否滿足規定的條件(也稱完整性約束條件)它是語義的體現。 例如,公民的身份證號碼必須是唯一的,考試成績只能是在0100分之間等。5.5.2 完整性對數據庫完整性產生破壞的主要原因有: 來自操作員的錯誤輸入數據庫應用程序出錯數據庫中并發操作控制不正確數據冗余引發的數據正本與副本之間的不一致數據
36、庫管理系統或操作系統出錯系統硬件出錯等5.5.2 完整性保證數據庫中的數據的完整性的方法之一是設置完整性檢驗,即通過對數據與數據之間的邏輯關系施加約束條件來實現。對數據庫中的數據強加的語義約束條件稱為數據庫完整性約束條件,也就是現實世界或系統設計者要求數據項應該滿足的條件。5.5.2 完整性完整性約束條件可以分為以下幾種。(1)數值的約束指對數據取值類型、范圍、精度等規定例如,規定年份是四位整數、月份是1至12的整數等。(2)結構的約束指數據之間聯系方面的限制 例如,每個學生對應著一個學號,學號的某個取值將唯一地決定該學生的其他方面的數據。根據這個特點,學號的取值不能為“空”值,并且它必須是“
37、唯一”的,從而,能根據學生學號的“唯一”條件找到某學生的相關數據,如果違反了這種限制,就破壞了結構的約束。5.5.2 完整性完整性約束條件可以分為以下幾種。(3)靜態約束指對數據庫每一確定狀態的數據所應滿足的約束條件(1)、(2)兩種約束屬于靜態約束。(4)動態約束指的是數據庫從一種狀態轉變為另一種狀態時新、舊值之間所應滿足的約束條件例如,當更新職工工資時,若舊工資大于等于800元時新工資等于舊工 資,否則新工資等于舊工資加上50元,這條約束條件體現了這樣的語義:調資范圍僅限于工資低于800元的職工。5.5.2 完整性完整性約束條件可以分為以下幾種。(5)立即執行約束指在執行用戶事務時,對事務
38、中某一更新語句執行完后馬上對此數據所應滿足的約束條件進行完整性檢查。對于立即執行約束,如果發現用戶操作違反了完整性約束條件,系統將拒絕該操作。5.5.2 完整性完整性約束條件可以分為以下幾種。(6)延遲執行約束指在整個事務執行結束后方對此約束條件進行完整性檢查,結果正確方能提交 對于延遲執行約束,如果發現用戶操作違反了完整性約束條件,系統將拒絕該事務,并把數據庫恢復到該事務執行前的狀態。例如,銀行數據庫中“借貸總金額應平衡”的約束就應該屬于延遲執行約束。從賬號A轉一筆錢到賬號B為一個事務,從賬號A轉出去錢以后就不平衡了,必須等轉入到賬號B后才能重新平衡,這時才能進行完整性檢查。5.5.2 完整
39、性從上面的討論可以看出,數據庫的安全性和完整性是兩個不同的概念。安全性措施的防范對象是非法用戶和非法操作,目的是保護數據庫防止惡意的破壞和非法的存取完整性措施的防范對象是數據庫中存在不符合語義的數據,目的是防止錯誤信息的輸入和輸出當然,數據的安全性和完整性又是密切相關的特別是從系統的實現的方法上來看,某一種機制常常既可以用于安全保護,也可以用于完整性保護。5.5 數據庫的安全與保護5.5.1 安全性5.5.2 完整性5.5.3 并發控制5.5.4 數據庫的恢復5.5.3 并發控制1. 并發的目的2. 并發所引起的問題3. 并發控制方法1. 并發的目的數據庫是一個共享資源,可以允許多個用戶使用。
40、使用的方法當然可以讓這些用戶程序一個接一個地串行執行,即: 每一時刻只能有一個用戶程序在運行,并執行對數據庫中的數據的存取;其它用戶程序必須等到這個用戶程序結束以后方能對數據庫存取。1. 并發的目的但是,由于用戶程序在執行過程中,隨著時間的不同會需要不同的資源,有時需要CPU,有時需要訪問磁盤,有時需要IO,有時需要通訊等。 這樣,若按照上述串行方式調度就會產生瓶頸現象,因為假如一個用戶程序涉及大量數據的輸入輸出,則將導致許多系統資源在大部分時間內處于閑置狀。所以,為了充分利用數據庫資源,發揮數據庫共享資源的特點,應該允許多個用戶程序并行地存取數據庫,這樣就會產生多個用戶程序并發地存取同一數據
41、的情況。5.5.3 并發控制1. 并發的目的2. 并發所引起的問題3. 并發控制方法 2. 并發所引起的問題若對并發操作不加控制,則會存取了不正確的數據,破壞了數據庫的一致性。例如,飛機訂票系統中: (1)甲售票點讀出某航班的機票余額A=6;(2)乙售票點讀出同一航班機票余額A,當然也為6;(3)甲售票點預訂了一張機票,修改余額AA-1,所以,A變為5,并把A寫回數據庫。 (4)乙售票點預訂了一張機票,修改余額AA-1,所以,A也變為5,并把A寫回數據庫。2. 并發所引起的問題所以,若按上面的次序執行,則座位數減1而不是減2。也就是說,結果明明是賣出兩張機票,但數據庫中機票余額只減少1。這種情
42、況稱為數據庫的不一致性。這種不一致性是由并發操作引起的,因為在并發操作情況下,對甲、乙兩個用戶活動序列的調度是隨機的。2. 并發所引起的問題若按上面的調度序列執行,用戶甲的修改就被丟失,這是由于第(4)步中用戶乙修改A并寫回后破壞了甲的修改。可見,若對并發的事務訪問數據庫的操作不進行有效控制,數據庫中的數據就有可能變為不正確。2. 并發所引起的問題并發操作可能會產生以下幾種不一致性。(1)丟失修改由于兩個事務對同一數據并發地寫入而引起例如,兩個事務T1和T2讀入同一數據并修改,T2提交的結果破壞了T1提交的結果,T1的修改被丟失。如上面的訂票例子。2. 并發所引起的問題并發操作可能會產生以下幾
43、種不一致性。(2)不能重復讀 指事務T1讀取某一數據后,事務T2讀取并修改了同一數據(更新操作),T1為了對讀取值進行校對再讀此數據,卻得到了不同的結果,即T1無法再現前一次的讀取結果。例如,T1讀取A=100,T2讀取A并把A改為200,T1再讀A得200與第一次讀取值不一致。2. 并發所引起的問題并發操作可能會產生以下幾種不一致性。(3)“臟”數據的讀出 指兩個或多個事務并發執行時,事務T1修改了某一數據,并將其寫回;事務T2在這之后讀取了同一數據,而T1在未正式提交之前由于某種原因被撤銷,系統就要對事務T1已經修改過的數據恢復原值,這樣,T2讀到的就是不正確的數據稱為“臟”數據,即T2讀
44、到的數據就與數據庫中的數據產生了不一致。2. 并發所引起的問題并發操作可能會產生以下幾種不一致性。(3)“臟”數據的讀出 例如,T1把A由100改為200,T2讀到A為200;而T1由于某種原因被撤銷,其修改宣布無效,A恢復為原值100,而T2卻讀得了A為200,與數據庫的內容不一致。5.5.3 并發控制1. 并發的目的2. 并發所引起的問題3. 并發控制方法 3. 并發控制方法 并發控制就是要用正確的方式來調度并發操作的事務,避免造成數據的不一致性,使一個用戶事務的執行不受其它事務的干擾。 (1) 封鎖機制并發控制的主要方法封鎖就是指某事務在對某對象執行操作前,先要對此對象加上自己的鎖。加鎖
45、后,其他事務對此對象的操作就受到了規定的限制。當然,該事務完成自己的操作之后,必須將加上的鎖撤消,以便其他事務執行相應的操作。3. 并發控制方法 例如在上述的訂票例子中,若用戶甲要修改A時,在讀出A前先封鎖A,其它用戶就不能讀取和修改A,直到甲修改完并寫回A以后解除了對A的封鎖為止。這樣,就不會丟失甲的修改了。(2) 封鎖類型基本的封鎖類型有兩種:排它性封鎖和共享性封鎖事務T對數據A建立了排它性封鎖,則只允許T讀取和修改A,其它一切事務都不能對此對象加鎖,也就不能對此對象執行任何操作。可見,只有數據對象未被任何其他事務加鎖時,對它的排它性封鎖請求才會成功。3. 并發控制方法 若某數據對象被加上
46、了共享性封鎖后,該數據對象就不能再被加上排它性封鎖,但可以被多個事務加上各自的共享性封鎖。所有對此對象加了共享性封鎖的事務都可以讀此對象,但不能修改此對象。例如,若事物T對數據A建立了共享性封鎖,則T和別的事務均可讀取A,但不能修改A,其他事務只能再對A加共享性封鎖,而不能加排它性封鎖,直到T釋放A上的共享性封鎖。3. 并發控制方法 當一個數據對象未被任何事務加上任何鎖時,一個事務發出的對該數據對象的任何鎖的請求都會被滿足。但當該數據對象已經被加上鎖時,對它的其他鎖申請就不一定被滿足。排它性封鎖和共享性封鎖的控制方式可以用表5.1的相容矩陣來表示。3. 并發控制方法 3. 并發控制方法 (3)
47、 死鎖及其解除 排它性封鎖可能引起死鎖問題,即系統中的兩個或更多個事務同時處于等待狀態,且其中的每一個事務在它能夠進行之前都在等待著另一個事務釋放封鎖,結果造成任何一個事務都無法繼續執行,這種現象便是死鎖。3. 并發控制方法 例如,兩個事務T1和T2分別需要數據A1和A2,它們在執行時,T1封鎖了A1,T2封鎖了A2;然后,T1又申請封鎖A2,同時T2也申請封鎖A1;因為T2已經封鎖了A2,所以,T1必須等待T2解除封鎖;同理,因為T1已經封鎖了A1,所以,T2也在等待T1解除封鎖。T1和T2都要等待對方數據才能進行下去。這樣就造成這兩個事務相互等待,永遠不能結束。3. 并發控制方法 在數據庫
48、中,解決死鎖的方法主要有兩大類:死鎖的預防和死鎖的解除。死鎖的預防就是破壞死鎖產生的條件,例如可以采用一次加鎖等方法預防死鎖,即要求每個事務一次就將要用的數據全部加鎖。若不能全部加鎖成功,則全部不加鎖,并處于等待狀態;若全部加鎖成功,則可以進行執行下去。3. 并發控制方法 可以采用“超時法”等方法解除死鎖,例如,預先規定一個最大等待時間,如果一個事務的等待時間超過了此規定時間,則認為產生了死鎖。可以從相關事務中選擇一個“犧牲品”打破死鎖,即剝奪它所占有的資源。 感興趣的讀者可參考有關書籍。5.5 數據庫的安全與保護5.5.1 安全性5.5.2 完整性5.5.3 并發控制5.5.4 數據庫的恢復
49、5.5.4 數據庫的恢復 數據庫中的數據是公司或政府部門的重要信息資源,盡管系統具有一定的保護措施來防止數據庫的安全性和完整性受到破壞但是系統中任何硬件的故障軟件的錯誤操作失誤以及人為的惡意破壞都是不可避免的5.5.4 數據庫的恢復 無論控制措施多么周密完善,這些故障仍可能導致數據庫安全性和完整性的丟失,甚至可以導致系統癱瘓。 例如掉電將會使半導體存儲器中的數據遭到破壞;瞬時的強磁場干擾也會使磁盤、磁帶等磁性存儲設備上的數據受到破壞等。5.5.4 數據庫的恢復 因此,數據庫管理系統必須具有檢測故障并把數據庫從錯誤狀態中恢復到某一正確狀態的功能,這就是數據庫的恢復。恢復技術是否有效是數據庫系統性
50、能的一個重要標志。各種系統的恢復技術和方案不盡相同,但恢復的基本原理卻是十分簡單,可用一個詞來概括:即冗余。5.5.4 數據庫的恢復 也就是說,保護數據庫的方法在于保證其中的任何一部分信息可以根據冗余地存儲在系統別處的其它信息來重建。以數據庫的轉儲為例所謂轉儲,即定期地將整個數據庫復制到多個存儲設備如磁帶、磁盤上保存起來的過程。這些備用的數據文本稱為后備副本或后援副本。當數據庫遭到破壞后就可利用后援副本把數據庫有效地加以恢復。轉儲是十分耗費資源的,不能頻繁進行,應根據數據庫使用情況來確定一個適當的轉儲周期。5.5.4 數據庫的恢復 轉儲分為靜態轉儲和動態轉儲。靜態轉儲在轉儲期間不允許對數據庫進
51、行任何操作(包括存取、修改等),即是在系統中沒有事務運行的情況下進行的轉儲。靜態轉儲比較簡單,且可以保證有一個一致性的數據庫副本,但是轉儲必須等到用戶事務全部結束后才能進行,在轉儲期間整個數據庫不能使用,這就降低了數據庫的可用性。5.5.4 數據庫的恢復 動態轉儲在轉儲期間允許對數據庫進行存取等操作,即數據轉儲和用戶事務可以并發執行。動態轉儲可以克服靜態轉儲的缺點,轉儲工作可以隨時進行。但是,由于與事務并行執行,不容易保證轉儲結束時后備副本上的數據的一致性,因此,其實現技術要求較高。第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.
52、4 數據庫管理系統 5.5 數據庫的安全與保護 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro5.6 數據模型及數據庫的基本類型 我們對模型并不陌生,例如,建筑模型、汽車模型等都是我們熟悉的常見模型。這些模型屬于實物模型,它們通常是客觀事物的外觀特征或功能特征的模擬與刻畫。此外,還可以用抽象模型來刻畫客觀事物的某些特征,例如一些數學模型。通常模型是現實世界某些特征的模擬和抽象,是對事物、現象、過程等客觀系統的簡化描述,是理解系統的思維工具。5.6 數據模型及數據庫的基本類型5.6.1 什么是數據模型 5.6.2 常見數
53、據模型 5.6.3 數據庫的基本類型5.6 數據模型及數據庫的基本類型5.6.1 什么是數據模型 5.6.2 常見數據模型 5.6.3 數據庫的基本類型5.6.1 什么是數據模型由于計算機只能存儲和處理數據,而不能直接存儲和處理現實世界中的客觀事物所以,必須先把企業的設備、產品和人員等客觀事物的某些特征抽象成計算機能夠存儲和處理的數據,才能用計算機對其進行管理。在計算機中,相應于每一實體的數據為記錄,相應于屬性的數據為數據項。實體內部的聯系反映在數據上是記錄內數據項之間的聯系實體間的聯系反映在數據上是記錄間的聯系數據模型就是指具有這種聯系的數據結構形式,也就是如何更好地定義各種記錄以及它們之間
54、的相互聯系。5.6.1 什么是數據模型數據模型是數據庫系統設計中用于提供信息表示和操作手段的形式框架,是數據庫的核心和基礎,不僅反映管理數據的具體值,而且,更重要的是要根據數據模型表示出數據之間的聯系。5.6.1 什么是數據模型5.6 數據模型及數據庫的基本類型5.6.1 什么是數據模型 5.6.2 常見數據模型 5.6.3 數據庫的基本類型5.6.2 常見數據模型各國學者提出了幾十種數據模型,但有影響的只有幾種。目前,數據庫領域中主要的結構數據模型有4種:層次模型網狀模型關系模型面向對象模型5.6.2 常見數據模型1. 層次模型2. 網狀模型3. 關系模型4. 面向對象模型5.6.2 常見數
55、據模型1. 層次模型2. 網狀模型3. 關系模型4. 面向對象模型1. 層次模型 現實世界中,許多實體之間的聯系本身就是一種自然的層次關系例如,所有單位的行政組織機構都是一種層次關系。所以,層次模型是數據庫系統中出現最早的數據模型,它表示的是一對多的聯系。1. 層次模型 層次模型實際上是樹,如圖5.5所示。它采用樹形結構表示各類實體以及實體之間的聯系,每個結點表示一個記錄型,結點之間的連線表示記錄型之間的聯系,這種聯系只能是父子關系;每個記錄型可以包含若干個字段。5.6.2 常見數據模型1. 層次模型2. 網狀模型3. 關系模型4. 面向對象模型2. 網狀模型 在現實世界中,許多事物之間的聯系
56、更多的是一種非層次的關系。網狀模型是一種比層次模型更具普遍性的結構,它允許兩個結點之間有多種聯系(稱之為復合聯系)。網狀模型實際上是圖。2. 網狀模型 如圖5.6所示。網狀模型中,每個記錄型對應一個或多個其他記錄型,每個記錄型也可以包含若干個字段。5.6.2 常見數據模型1. 層次模型2. 網狀模型3. 關系模型4. 面向對象模型3. 關系模型 用二維表格數據(即集合論中的關系)來表示實體和實體之間聯系的模型被稱作關系模型,如圖5.7所示。3. 關系模型 二維表格由行和列組成,一行表示一條數據記錄,一列表示所有數據記錄在特定域的值。一條數據記錄描述了一個應用對象的實例狀態。3. 關系模型 現在
57、流行的大部分數據庫系統都是基于關系模型的,例如Visual FoxProOracleSQLSybase5.6.2 常見數據模型1. 層次模型2. 網狀模型3. 關系模型4. 面向對象模型4. 面向對象模型 眾所周知,面向對象是一種認識、描述事物的方法論。面向對象方法以客觀世界中存在的實體對象為基本元素,通過類和繼承來表達事物之間具有的共性和關系,并采用一種比較直接的映射方式很好地實現了抽象封裝復雜性控制信息隱藏等機制4. 面向對象模型 面向對象模型中最基本的概念是對象類對象是現實世界中實體的模型化,與記錄概念相仿,但遠比記錄復雜。每個對象有一個唯一的標識符,把狀態和行為封裝在一起,其中,對象的
58、狀態是該對象屬性值的集合,對象的行為是在對象狀態上操作的方法集。共享同一屬性集和方法集的所有對象構成一個類。這就是面向對象模型。5.6 數據模型及數據庫的基本類型5.6.1 什么是數據模型 5.6.2 常見數據模型 5.6.3 數據庫的基本類型5.6.3 數據庫的基本類型與各種數據模型相對應,數據庫可以劃分為:層次型數據庫網狀型數據庫關系型數據庫面向對象型數據庫例如,以關系數據模型作為數據的組織方式的數據庫稱為關系型數據庫,其余依此類推。第5章 數據庫技術 5.1 數據庫技術的重要性5.2 數據庫技術的基本概念5.3 數據庫管理技術的發展歷程 5.4 數據庫管理系統 5.5 數據庫的安全與保護
59、 5.6 數據模型及數據庫的基本類型 5.7 常用數據庫系統概述5.8 關系數據庫理論基礎及關系數據庫管理 系統FoxPro5.7 常用數據庫系統簡介 數據庫技術從20世紀60年代后期產生到今天,僅有短短30多年的歷史,但其發展速度之快、使用范圍之廣是其它技術所遠不及的。40多年以來,已經從第一代的層次數據庫、網狀數據庫,第二代的關系數據庫,發展到第三代以面向對象模型為主要特征的數據庫系統。5.7 常用數據庫系統簡介 數據庫技術與網絡通信技術、人工智能技術、 等等面向對象程序設計技術、并行計算技術 互相滲透、互相結合,成為當今數據庫技 術發展的主要特征。5.7 常用數據庫系統簡介 從20世紀8
60、0年代以來,數據庫技術在商業領域的巨大成功刺激了其它領域對數據庫技術需求的迅速增長。這些新的領域為數據庫應用開辟了新的天地,并在應用中提出了一些新的數據管理的需求,所有這些都直接推動了數據庫技術的研究與發展,尤其是面向對象數據庫系統(Object Oriented Database System,簡稱OODBS)的研究和發展。5.7 常用數據庫系統簡介 20世紀90年代后期,信息產業的發展勢頭異常迅猛,數據庫技術在其中起著舉足輕重的作用。下面介紹幾個流行的數據庫產品和數據庫快速開發工具。5.7 常用數據庫系統簡介5.7.1 FoxPro 5.7.2 Visual FoxPro 5.7.3 SQ
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲店鋪租賃與品牌形象改造服務合同
- 影視劇本創作與經紀代理服務合同
- 礦產資源開采權轉讓與礦山地質環境保護合同
- 高效采購談判策略與專業跟單服務合同
- QQ軟件國際化推廣與本地化定制合同
- 旅游景區特色鋪面租賃及旅游產品銷售合同
- 餐飲店長聘用與品牌推廣活動策劃合同
- 2024屆福建省廈門市金雞亭中學中考數學四模試卷含解析
- 2024屆廣東省佛山禪城區七校聯考中考適應性考試數學試題含解析
- 制冷行業代理管理制度
- 醫院清潔消毒與滅菌課件
- 2022年小學生詩詞大賽參考題庫200題(含答案)
- 水泥廠工藝流程圖
- 檢驗檢測服務公司合作戰略方案
- DB34∕T 451-2017 地理標志產品 舒城小蘭花
- 《卓有成效的管理者》Word電子版電子版本
- 螺紋基本尺寸對照表
- T∕CIC 049-2021 水泥窯用固體替代燃料
- 制缽機的設計(機械CAD圖紙)
- 《土木工程生產實習報告》
- 11分泌性中耳炎學習課程
評論
0/150
提交評論