數(shù)據(jù)庫原理及應用實用教程_第1頁
數(shù)據(jù)庫原理及應用實用教程_第2頁
數(shù)據(jù)庫原理及應用實用教程_第3頁
數(shù)據(jù)庫原理及應用實用教程_第4頁
數(shù)據(jù)庫原理及應用實用教程_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

數(shù)據(jù)庫原理及應用實用教程第1頁,共31頁,2023年,2月20日,星期六第1章數(shù)據(jù)庫的概念第2章實體聯(lián)系模型第3章關系模型及ORACLE對象關系數(shù)據(jù)庫第4章ORACLESQL和PL/SQL第5章關系數(shù)據(jù)庫設計理論第6章數(shù)據(jù)庫的設計與維護第7章數(shù)據(jù)庫保護第8章ORACLE的企業(yè)管理器(EnterpriseManager)

第9章分布式數(shù)據(jù)庫系統(tǒng)第10章數(shù)據(jù)庫應用程序開發(fā)工具-ORACLEDeveloper第11章ORACLEJ2EE高級技術與JDeveloper第12章ORACLE程序?qū)嵗獔D書管理信息系統(tǒng)第2頁,共31頁,2023年,2月20日,星期六第一章數(shù)據(jù)庫的概念1.1數(shù)據(jù)庫的意義1.2數(shù)據(jù)庫的由來和發(fā)展1.3數(shù)據(jù)庫的體系結構1.4數(shù)據(jù)庫系統(tǒng)1.5數(shù)據(jù)庫管理系統(tǒng)第3頁,共31頁,2023年,2月20日,星期六1.1.1DB(Database)數(shù)據(jù)庫

Database:顧名思義,數(shù)據(jù)庫(Database,即DB)是存貯在一起的相關數(shù)據(jù)的集合,是存貯數(shù)據(jù)的“倉庫”。

誕生于20世紀中葉的計算機科學較之其它現(xiàn)代科學技術的發(fā)展更迅速,在21世紀到來之際,它幾乎可以稱為“知識爆炸”了。21世紀是信息和知識的社會,如何組織和利用這些龐大的信息和知識已成為衡量一個國家科學技術水平高低的重要標志。

早在60年代,數(shù)據(jù)庫技術作為現(xiàn)代信息系統(tǒng)基礎的一門軟件學科便應運而生了?,F(xiàn)在,數(shù)據(jù)庫技術已成為計算機領域中最重要的技術之一,它是軟件學科中一個獨立的分支。

第4頁,共31頁,2023年,2月20日,星期六1.1.2數(shù)據(jù)模型

數(shù)據(jù)庫系統(tǒng)就是實現(xiàn)有組織地、動態(tài)地存貯大量相關數(shù)據(jù),方便用戶訪問的計算機軟、硬資源組成的系統(tǒng)。而數(shù)據(jù)庫技術是研究數(shù)據(jù)庫的結構、存貯、設計和使用的一門軟件學科。因此,數(shù)據(jù)庫技術主要是研究如何存貯、使用和管理數(shù)據(jù)。數(shù)據(jù)庫離不開數(shù)據(jù)模型。數(shù)據(jù)模型是對現(xiàn)實世界客觀事物及其聯(lián)系的描述,它反映數(shù)據(jù)項之間和記錄之間的聯(lián)系,在數(shù)據(jù)庫技術中使用模型的概念描述數(shù)據(jù)庫的結構與語義。常用有三種數(shù)據(jù)模型

(datamodel):層次模型(hierarchicalmodel),網(wǎng)狀模型(networkmodel)和關系模型(relationalmodel)。此外,還有面向?qū)ο竽P停╫bject-orientedmodel)返回第5頁,共31頁,2023年,2月20日,星期六1.2.1人工管理階段(20世紀50年代中期以前)這一階段的計算機主要用于科學計算。硬件中的外存只有卡片、紙帶等。軟件只有匯編語言,沒有數(shù)據(jù)管理方面的軟件。數(shù)據(jù)處理的方式基本上是批處理。這個時期的數(shù)據(jù)管理特點如下:1.數(shù)據(jù)不保存

2.沒有專用軟件對數(shù)據(jù)進行管理

3.只有程序(PROGRAM)的概念、沒有文件的概念

4.數(shù)據(jù)面向應用即一組數(shù)據(jù)對應于一個程序。

5.對數(shù)據(jù)的存取以記錄為單位

1.2數(shù)據(jù)庫的由來和發(fā)展返回第6頁,共31頁,2023年,2月20日,星期六1.2.2文件系統(tǒng)階段文件系統(tǒng)階段(20世紀50年代后期至60年代中后期)

這一階段的計算機不僅用于科學計算,還大量用于信息管理。外存已有磁盤、磁鼓等直接存取貯設備。軟件方面出現(xiàn)了高級語言和操作系統(tǒng)。操作系統(tǒng)中的文件系統(tǒng)(有時也稱為“信息處理模塊”)是專門處理外存的數(shù)據(jù)管理軟件。處理數(shù)據(jù)方式有批處理,也有聯(lián)機實時處理。這一階段數(shù)據(jù)管理情況如下:1、特點

(1)數(shù)據(jù)可長期保存在外存的磁盤上

第7頁,共31頁,2023年,2月20日,星期六(2)數(shù)據(jù)的物理結構與邏輯結構有了區(qū)別,但較簡單。程序與設備之間有設備獨立性(程序只需用文件名與數(shù)據(jù)打交道

).(3)文件的形式已多樣化,有索引文件,鏈接文件和直接存取等,因而對文件的記錄可順序訪問,也可隨機訪問。但文件之間是獨立的,聯(lián)系要通過程序去構造,文件的共享性差。第8頁,共31頁,2023年,2月20日,星期六(4)有了存貯文件以后,數(shù)據(jù)不再僅僅屬于某個特定的程序,而可以重復使用。但文件結構的設計仍然是基于特定的用途,程序仍然是基于特定的

.(5)對數(shù)據(jù)的存取基本上還是以記錄為單位。

2.缺陷文件系統(tǒng)有三大缺陷:第9頁,共31頁,2023年,2月20日,星期六

(1)數(shù)據(jù)冗余性(redundancy),由于文件之間缺泛聯(lián)系,造成每個應用程序都有對應的文件,有可能同樣的數(shù)據(jù)在多個文件中重復存貯;(2)不一致性(inconsistency),這往往是由數(shù)據(jù)冗余造成的,在進行更新操作時,稍不謹慎,就可能同樣的數(shù)據(jù)在不同的文件中不一樣;(3)數(shù)據(jù)聯(lián)系弱(poordatarelationship),這是文件之間獨立,缺乏聯(lián)系造成的。第10頁,共31頁,2023年,2月20日,星期六1.2.3數(shù)據(jù)庫階段數(shù)據(jù)庫階段(20世紀60年代末開始)

1.采用復雜的數(shù)據(jù)模型(結構)

數(shù)據(jù)模型不僅要描述數(shù)據(jù)本身的特點,還要描述數(shù)據(jù)之間的聯(lián)系。這種聯(lián)系是通過存取路徑來實現(xiàn)的。通過一切存取路徑來表示自然的數(shù)據(jù)聯(lián)系是數(shù)據(jù)庫與傳統(tǒng)文件的根本區(qū)別。這樣數(shù)據(jù)不再面向特定的某個或多個應用,而是面向整個應用系統(tǒng)。數(shù)據(jù)冗余明顯減少,實現(xiàn)了數(shù)據(jù)共享。第11頁,共31頁,2023年,2月20日,星期六

2.有較高的數(shù)據(jù)獨立性在數(shù)據(jù)庫系統(tǒng)中,系統(tǒng)提供映象的功能,確保應用程序?qū)?shù)據(jù)結構和存取方法有較高的獨立性。用戶以簡單的邏輯結構操作數(shù)據(jù)而無需考慮數(shù)據(jù)的物理結構。數(shù)據(jù)庫結構分成用戶的邏輯結構、整體邏輯結構和物理結構。在改變物理結構時,不影響整體邏輯結構、用戶的邏輯結構以及應用程序,這樣就認為數(shù)據(jù)庫達到了物理數(shù)據(jù)獨立性。在改變整體邏輯時,不影響用戶的邏輯結構以及應用程序,這樣就認為數(shù)據(jù)庫達到了邏輯數(shù)據(jù)獨立性。3.數(shù)據(jù)庫系統(tǒng)為用戶提供了方便的用戶接口用戶可使用查詢語言或簡單的終端命令操作數(shù)據(jù)庫,也可以使用程序方式(用高級語言如C、FORTRAN等語言和數(shù)據(jù)庫操縱語言編制的程序)操作數(shù)據(jù)庫。4.提供下述四方面的數(shù)據(jù)控制功能(1)數(shù)據(jù)完整性:保證數(shù)據(jù)庫始終包含正確的數(shù)據(jù)。用戶可設計一些完整性規(guī)則以確保數(shù)據(jù)值的正確性。第12頁,共31頁,2023年,2月20日,星期六(2)數(shù)據(jù)安全性:保證數(shù)據(jù)的安全和機密,防止數(shù)據(jù)丟失或被竊取。(3)數(shù)據(jù)庫的并發(fā)控制:避免并發(fā)程序之間的相互干擾,防止數(shù)據(jù)庫數(shù)據(jù)被破壞,杜絕提供給用戶不正確的數(shù)據(jù)。(4)數(shù)據(jù)的恢復:在數(shù)據(jù)庫被破壞時或數(shù)據(jù)不可靠時,系統(tǒng)有能力把數(shù)據(jù)庫恢復到最近某個時刻的正確狀態(tài)。5.還可以數(shù)據(jù)項為單位操作對數(shù)據(jù)庫的操作除了以記錄為單位外還可以數(shù)據(jù)項為單位。第13頁,共31頁,2023年,2月20日,星期六1.2.4高級數(shù)據(jù)庫階段高級數(shù)據(jù)庫階段(20世紀70年代后期開始)

這一階段的主要標志是分布式數(shù)據(jù)庫系統(tǒng)、面向?qū)ο髷?shù)據(jù)庫、智能數(shù)據(jù)庫系統(tǒng)的出現(xiàn)。

第14頁,共31頁,2023年,2月20日,星期六1.3數(shù)據(jù)庫的體系結構

從DBMS的角度看:數(shù)據(jù)庫系統(tǒng)采用三級體系結構

從最終用戶的角度看:集中式結構分布式結構客戶/服務器結構平行結構

第15頁,共31頁,2023年,2月20日,星期六1.模式(schema)和實例(instance)

在數(shù)據(jù)模型中有型(type)和值(value)的概念。型是對某一類數(shù)據(jù)的結構和屬性說明,值是型的一個具體賦值。例如:學生記錄定義為(學號,姓名,性別,系別,年齡,籍貫)這樣的“型”,而(900201,李明,男,計算機,22,江蘇)則是該型的一個“值”數(shù)據(jù)庫模式只是數(shù)據(jù)庫的一種結構描述,僅涉及到型的描述,并不涉及任何具體的數(shù)據(jù)。模式的一個具體值稱為模式的一個實例。我們常說“定義了一個數(shù)據(jù)庫”只是指定義了一個數(shù)據(jù)庫模式,只有按該模式裝入數(shù)據(jù)以后,這個數(shù)據(jù)庫才算真正建立起來了。

第16頁,共31頁,2023年,2月20日,星期六2.數(shù)據(jù)庫的三級體系結構數(shù)據(jù)庫的三個抽象級別,它把數(shù)據(jù)的具體組織留給DBMS管理,使用戶不必關心數(shù)據(jù)在計算機內(nèi)的具體表示方式與存儲方式。

內(nèi)模式(internalschema):也稱存儲模式(storageschema).它是數(shù)據(jù)物理結構和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式。數(shù)據(jù)視圖是指從某個角度看到的數(shù)據(jù)特性。模式(schema):也稱邏輯模式(logicalschema)

是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述,是所有用戶的公共數(shù)據(jù)視圖。它是數(shù)據(jù)庫系統(tǒng)模式結構的中間層,既不涉及數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境,也與具體的應用程序,所用的應用開發(fā)工具無關。

第17頁,共31頁,2023年,2月20日,星期六

外模式(externalschema):也稱子模式(subschema)或用戶模式,它是數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)能看見和使用的局部數(shù)據(jù)的邏輯結構和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應用有關的數(shù)據(jù)的邏輯表示。

第18頁,共31頁,2023年,2月20日,星期六數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)的獨立性為了實現(xiàn)三個抽象級別的轉換,DBMS提供了兩層映像(mappings):外模式/模式映像,模式/內(nèi)模式映像。這兩級映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)具有較高的數(shù)據(jù)獨立性(邏輯獨立性和物理獨立性)

物理獨立性PhysicalDataIndependence:指用戶的應用程序存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。也就是說,數(shù)據(jù)怎樣存儲是由DBMS管理的,用戶程序不需要了解,應用程序要處理的只是數(shù)據(jù)的邏輯結構,這樣當數(shù)據(jù)的物理存儲改變了,應用程序不必改變。

第19頁,共31頁,2023年,2月20日,星期六

邏輯獨立性Logicaldataindependence:指用戶的應用程序與數(shù)據(jù)庫的邏輯結構是相互獨立的,也就是說邏輯結構改變了,用戶程序也可以不變。(1)外模式/模式映像

模式描述的是數(shù)據(jù)的全局邏輯結構,外模式描述的是數(shù)據(jù)的局部邏輯結構。對應同一模式可以有任意多個外模式。對于每一個外模式,數(shù)據(jù)庫系統(tǒng)都有一個外模式/模式映像,它定義了該外模式和模式之間的對應關系。當模式改變時(例如增加了新的關系,新的屬性,改變屬性的數(shù)據(jù)類型等),由數(shù)據(jù)庫管理員對各個外模式/模式的映像作相應的改變,可以使外模式保持不變。應用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性。

第20頁,共31頁,2023年,2月20日,星期六(2)模式/內(nèi)模式映像

數(shù)據(jù)庫只有一個模式,也只有一個內(nèi)模式,所以模式/內(nèi)模式映像是唯一的,它定義了數(shù)據(jù)庫全局邏輯結構和存儲結構之間的對應關系。當數(shù)據(jù)庫的存儲結構改變了(例如選用了另一種存儲結構),由數(shù)據(jù)庫管理員對模式/內(nèi)模式映像作相應的改變,可以使模式保持不變,從而應用程序不必修改。保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)據(jù)的物理獨立性。

返回第21頁,共31頁,2023年,2月20日,星期六1.4DBS(databasesystems)數(shù)據(jù)庫系統(tǒng)

數(shù)據(jù)庫系統(tǒng)的組成:

硬件平臺及數(shù)據(jù)庫

軟件(DBMS+OS+具有數(shù)據(jù)庫接口的高級語言及編譯系統(tǒng)+以DBMS為核心的應用開發(fā)工具)人員(DBA,系統(tǒng)分析員,數(shù)據(jù)庫設計人員,應用程序員,最終用戶)

返回第22頁,共31頁,2023年,2月20日,星期六數(shù)據(jù)庫管理員(DBA)下面著重介紹DBA的工作:要想成功地運轉數(shù)據(jù)庫,就要在數(shù)據(jù)處理部門配備管理人員DBA。DBA必須熟悉企業(yè)全部數(shù)據(jù)的性質(zhì)和用途,因此他是面向應用的,對用戶的需求有充分的認識;他對系統(tǒng)性能也非常關切,因而要求他兼有系統(tǒng)程序員和運籌學專家的品質(zhì)和知識。DBA是控制數(shù)據(jù)整體結構的人,負責保護和控制數(shù)據(jù),使數(shù)據(jù)能被任何有權使用的人有效使用。DBA可以是一個人,但一般是由幾個人組成的一個小組,其主要職責是:第23頁,共31頁,2023年,2月20日,星期六數(shù)據(jù)庫管理員

數(shù)據(jù)庫管理員(DBA)。下面著重介紹DBA的工作。要想成功地運轉數(shù)據(jù)庫,就要在數(shù)據(jù)處理部門配備管理人員DBA。DBA必須熟悉企業(yè)全部數(shù)據(jù)的性質(zhì)和用途,因此他是面向應用的,對用戶的需求有充分的認識;他對系統(tǒng)性能也非常關切,因而要求他兼有系統(tǒng)程序員和運籌學專家的品質(zhì)和知識。DBA是控制數(shù)據(jù)整體結構的人,負責保護和控制數(shù)據(jù),使數(shù)據(jù)能被任何有權使用的人有效使用。DBA可以是一個人,但一般是由幾個人組成的一個小組,其主要職責是:第24頁,共31頁,2023年,2月20日,星期六①決定數(shù)據(jù)庫的信息內(nèi)容和結構,確定某現(xiàn)實問題的實體聯(lián)系模型,建立與DBMS有關的數(shù)據(jù)模型和概念模式。②決定存儲結構和存取策略,建立內(nèi)模式和模式/內(nèi)模式映象。使數(shù)據(jù)的存儲空間利用率和存取效率兩方面都較優(yōu)。③充當用戶和DBS的聯(lián)絡員,建立外模式和外模式/模式映象。第25頁,共31頁,2023年,2月20日,星期六④定義數(shù)據(jù)的安全性要求和完整性約束條件,以保證數(shù)據(jù)庫的安全性和完整性。安全性要求是用戶對數(shù)據(jù)庫的存取權限,完整性約束條件是對數(shù)據(jù)進行有效性檢驗的一系列規(guī)則和措施。⑤確定數(shù)據(jù)庫的后援支持手段及制訂系統(tǒng)出現(xiàn)故障時數(shù)據(jù)庫的恢復策略。⑥監(jiān)視并改善系統(tǒng)的“時空”性能,提高系統(tǒng)的效率。第26頁,共31頁,2023年,2月20日,星期六⑦當系統(tǒng)需要擴充和改造時,負責修改和調(diào)整外模式、模式和內(nèi)模式??傊?,DBA承擔創(chuàng)建、監(jiān)控和維護整個數(shù)據(jù)庫結構的責任。DBA負責維護數(shù)據(jù)庫,但為了保證數(shù)據(jù)的安全性,數(shù)據(jù)庫的內(nèi)容對DBA應該是封鎖的。例如,DBA知道職工記錄類型中含有工資數(shù)據(jù)項,他可以根據(jù)應用的需要將該數(shù)據(jù)項類型由6位數(shù)字擴充到7位數(shù)字,但是他不能讀取或修改任一職工的工資數(shù)據(jù)。第27頁,共31頁,2023年,2月20日,星期六1.5DBMS(DatabaseManagementSystem)

數(shù)據(jù)庫管理系統(tǒng)

DBMS是指數(shù)據(jù)庫系統(tǒng)中對數(shù)據(jù)進行管理的軟件系統(tǒng),它是數(shù)據(jù)庫的核心組成部分,數(shù)據(jù)庫系統(tǒng)的一切操作,包括查詢,更新及各種控制,都是通過DBMS進行的。主要功能有:1.數(shù)據(jù)庫定義功能

DBMS提供數(shù)據(jù)定義語言(datadefinitionlanguage,簡稱DDL),用戶通過它可以方便地對數(shù)據(jù)庫中的數(shù)據(jù)對象進行定義。第28頁,共31頁,2023年,2月20日,星期六2.數(shù)據(jù)操

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論