




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、教教材:劉曉劉曉燕等.Access數(shù)數(shù)據(jù)庫教庫教程,廣西師師范大學(xué)學(xué)出版社,2009參參考資資料:(1)李春葆等.Access 2003程序設(shè)計教設(shè)計教程(第2版),清華清華大學(xué)學(xué)出版社,2007(2)薩師薩師煊等.數(shù)數(shù)據(jù)庫庫系統(tǒng)概論統(tǒng)概論(第三版),高等教教育出版社,2006主講人:王主講人:王 新新 政政TEL TEL :1373771546713737715467EMAILEMAIL:WXZWXZ數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng) 2目 錄錄第一章第一章 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述第二章第二章 Access2003數(shù)據(jù)庫系統(tǒng)的基本概念數(shù)據(jù)庫系統(tǒng)的基本概念第三章第三章 重要的表操作重要的表操作
2、第四章第四章 查詢查詢第五章第五章 創(chuàng)建實用窗體創(chuàng)建實用窗體第六章第六章 報表報表第七章第七章 數(shù)據(jù)訪問頁的設(shè)計數(shù)據(jù)訪問頁的設(shè)計第九章第九章 模塊模塊第八章第八章 宏宏3 數(shù)據(jù)庫技術(shù)是數(shù)據(jù)管理技術(shù),是計算機科學(xué)與技術(shù)的重要分支,是信息系統(tǒng)的核心和基礎(chǔ)。 目前,社會上不同種類的信息系統(tǒng),特別是管理信息系統(tǒng),如學(xué)校教學(xué)管理系統(tǒng)、銀行業(yè)務(wù)系統(tǒng)等,都是以數(shù)據(jù)庫為基礎(chǔ)、對信息進行處理和應(yīng)用的系統(tǒng)。 數(shù)據(jù)庫借助計算機保存和管理大量的、復(fù)雜的數(shù)據(jù),能快捷和有效地為不同的用戶和各種應(yīng)用程序提供及時、準(zhǔn)確的相關(guān)信息,滿足人們不同的需求。41.1 1.1 數(shù)據(jù)庫技術(shù)應(yīng)用舉例數(shù)據(jù)庫技術(shù)應(yīng)用舉例1.2 1.2 數(shù)據(jù)庫
3、知識數(shù)據(jù)庫知識1.3 1.3 數(shù)據(jù)庫的設(shè)計數(shù)據(jù)庫的設(shè)計1.4 1.4 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展5 1 1學(xué)學(xué)校校教學(xué)教學(xué)管理系管理系統(tǒng)統(tǒng)學(xué)校教學(xué)管理系統(tǒng)主要涉及學(xué)生學(xué)生、教師教師、課程課程和成績成績等信息的管理。該系統(tǒng)包括的典型數(shù)據(jù)有:(1 1)學(xué)生信息)學(xué)生信息:學(xué)生編號、姓名、性別、年齡、入校日期、團員否、家庭住址、簡歷等;(2 2)教師信息)教師信息:教師編號、姓名、性別、工作時間、政治面貌、學(xué)歷、職稱、系別、電話號碼等;(3 3)課程信息)課程信息:課程編號、課程名稱、任課教師編號、課程類別和學(xué)分等;(4 4)選課成績)選課成績:選課ID、學(xué)生編號、課程編號、平
4、時成績、考試成績、學(xué)期等。6 2 2銀銀行行業(yè)務(wù)業(yè)務(wù)系系統(tǒng)統(tǒng)如:信用卡管理系統(tǒng),需要管理的典型數(shù)據(jù)有:(1 1)儲戶的基本信息)儲戶的基本信息:身份證號碼、姓名、通信地址、郵政編碼和電話號碼等;(2 2)信用卡的基本信息)信用卡的基本信息:卡號、賬號、交易種類、交易金額、交易日期和賬戶余額等;(3 3)儲戶和卡的關(guān)聯(lián))儲戶和卡的關(guān)聯(lián):身份證號碼和賬號等。7 3 3網(wǎng)網(wǎng)上上論壇論壇網(wǎng)上論壇,包括的典型數(shù)據(jù)有:(1 1)用戶信息)用戶信息:用戶的IP號、用戶名、用戶的密碼、用戶姓名和E-mail等;(2 2)論壇留言信息)論壇留言信息:留言ID號、留言標(biāo)題、留言內(nèi)容、留言人用戶名、創(chuàng)建和回復(fù)的日期
5、和時間、點擊數(shù)等。8 1 1 數(shù)據(jù)與信息 2 2 數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng) 和數(shù)據(jù)庫系統(tǒng) 3 3 數(shù)據(jù)模型和數(shù)據(jù)庫分類 4 4 關(guān)系型數(shù)據(jù)庫的基本概念9 1.2.11.2.1數(shù)數(shù)據(jù)據(jù)與與信息信息1 1數(shù)據(jù)數(shù)據(jù):描述事物的符號記錄稱為數(shù)據(jù)。描述事物的符號可以是數(shù)字,還可以是文字、圖形、圖像、聲音等。2 2信息信息:信息是經(jīng)過加工的數(shù)據(jù);信息是事物之間相互聯(lián)系、相互作用的數(shù)據(jù)。數(shù)據(jù)是客觀存在的,信息具有一定的主觀性。數(shù)據(jù)是信息的物理形式,信息是數(shù)據(jù)包含的含義。數(shù)據(jù)是信息存在的一種形式,只有通過解釋或處理才能成為有用的信息。10 1.2.2數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)1 1數(shù)據(jù)庫數(shù)據(jù)庫: 數(shù)據(jù)庫
6、(Database,簡稱DB)是存儲在計算機外部存儲器中、有組織、可供多個用戶共享、與應(yīng)用程序彼此獨立的一組相關(guān)數(shù)據(jù)的集合。2 2數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)(Database Management System,簡稱DBMS)是位于用戶和操作系統(tǒng)之間的數(shù)據(jù)管理軟件,通過它,能對數(shù)據(jù)庫進行有效組織、管理和存取。11 1.2.2數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫的建立和維護數(shù)據(jù)庫的運行管理通信 數(shù)據(jù)操作數(shù)據(jù)庫定義數(shù)據(jù)庫管理數(shù)據(jù)庫管理系統(tǒng)的系統(tǒng)的主要功能主要功能12 1.2.2數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng) 3 3數(shù)數(shù)據(jù)據(jù)庫庫系系統(tǒng)統(tǒng) 數(shù)據(jù)庫系統(tǒng)(Database Sys
7、tem,簡稱DBS)通常是指帶有數(shù)據(jù)庫的計算機應(yīng)用系統(tǒng)。通常認為完整的數(shù)據(jù)庫系統(tǒng)由硬件、操作系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫應(yīng)用系統(tǒng)和用戶等組成。13 1數(shù)據(jù)模型數(shù)據(jù)模型是現(xiàn)實世界數(shù)據(jù)特征的抽象結(jié)果,它反映了客觀世界中各種事物之間的聯(lián)系,是這些聯(lián)系的抽象和歸納。常用的數(shù)據(jù)模型可以分為層次數(shù)據(jù)模型層次數(shù)據(jù)模型、網(wǎng)網(wǎng)狀數(shù)據(jù)模型狀數(shù)據(jù)模型和關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型。14 1數(shù)據(jù)模型 (1)層次數(shù)據(jù)模型 層次數(shù)據(jù)模型亦稱樹形模型,它很像一棵倒掛的樹,用來描述有層次聯(lián)系的事物。層次模型反映了客觀事物之間一對多(1:n)的聯(lián)系。層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型,采用層次模型的數(shù)據(jù)庫的典型代表是
8、IBM公司的IMS(Information Management System)數(shù)據(jù)庫管理系統(tǒng)?,F(xiàn)實世界中,許多實體之間的聯(lián)系都表現(xiàn)出一種很自然的層次關(guān)系,如家族關(guān)系,行政機構(gòu)等。15實體間具有層次關(guān)系的例子教務(wù)科學(xué)籍科教務(wù)處.科研處.后勤處.計算機學(xué)院校部16層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu) 層次模型的數(shù)據(jù)結(jié)構(gòu):“有向樹”實體型實體型:用:用記錄類型記錄類型描述。描述。 每個結(jié)點表示一個記錄類型。每個結(jié)點表示一個記錄類型。屬性屬性:用:用字段字段描述。每個記錄類型可包含若干個字段。描述。每個記錄類型可包含若干個字段。聯(lián)系聯(lián)系:用:用結(jié)點之間的連線(有向邊)結(jié)點之間的連線(有向邊)表示記錄類型之間表示記
9、錄類型之間的一對多的聯(lián)系的一對多的聯(lián)系 層次模型中的幾個術(shù)語根結(jié)點根結(jié)點,雙親結(jié)點,雙親結(jié)點,兄弟結(jié)點兄弟結(jié)點,葉結(jié)點葉結(jié)點17層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)) 1 根結(jié)點根結(jié)點 2 兄弟結(jié)點兄弟結(jié)點 3 葉結(jié)點葉結(jié)點 4 兄弟結(jié)點兄弟結(jié)點 5 葉結(jié)點葉結(jié)點 葉結(jié)點葉結(jié)點18層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)) 層次模型的特征:(1)有且僅有一個結(jié)點沒有雙親,該結(jié)點就是 根結(jié)點;(2)根結(jié)點以外的其他結(jié)點有且僅有一個雙親 結(jié)點,這就使得層次數(shù)據(jù)庫系統(tǒng)只能直接 處理一對多的實體關(guān)系;19實例:教員學(xué)生數(shù)據(jù)庫層次模型 系編號 系名 辦公地點教研室編號教研室學(xué)號 姓名 成績職工號 姓名 研究方向系教研室學(xué)生教員
10、20 1數(shù)據(jù)模型 (2)網(wǎng)狀數(shù)據(jù)模型 20世紀70年代,數(shù)據(jù)系統(tǒng)語言研究會CODASYL(Conference On Data System Language)下屬的數(shù)據(jù)庫任務(wù)組DBTG(Data Base Task Group)提出了一個系統(tǒng)方案,DBTG系統(tǒng),也稱CODASYL系統(tǒng),成為了網(wǎng)狀數(shù)據(jù)模型的代表。 網(wǎng)狀數(shù)據(jù)模型用來描述事物間的網(wǎng)狀聯(lián)系,反映了客觀事物之間的多對多(m:n)的聯(lián)系。21實體間多-多關(guān)系采用網(wǎng)狀模型的數(shù)據(jù)庫系統(tǒng):lCullinetCullinet Software Software 公司的公司的 IDIDMSMSlUnivacUnivac公司的公司的 DMS1100
11、DMS1100lHoneywellHoneywell公司的公司的IDS/2IDS/2lHPHP公司的公司的IMAGEIMAGE22網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu) 網(wǎng)狀模型滿足下面兩個條件的基本層次聯(lián)系的集合為網(wǎng)狀模型。1. 允許一個以上的結(jié)點無雙親;2. 一個結(jié)點可以有多于一個的雙親。23網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)) 表示方法(與層次數(shù)據(jù)模型相同)實體型:用記錄類型描述。 每個結(jié)點表示一個記錄類型。屬性:用字段描述。 每個記錄類型可包含若干個字段。聯(lián)系:用結(jié)點之間的連線表示記錄(類)型之 間的一對多的父子聯(lián)系。24網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu) R 1 R 2 R3 L1 L2 R1 R2 L3 L1 L2
12、L2 R3 L4 R4 R525網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))學(xué)生宿舍學(xué)生宿舍學(xué)生學(xué)生教研室教研室系系教師教師26網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))學(xué)生/選課/課程的網(wǎng)狀數(shù)據(jù)模型 課程選修學(xué)生mn27網(wǎng)狀數(shù)據(jù)模型的存儲結(jié)構(gòu)學(xué)生/選課/課程的網(wǎng)狀數(shù)據(jù)庫實例 學(xué)生記錄學(xué)生記錄課程記錄課程記錄選課記錄選課記錄281數(shù)據(jù)模型 (3)關(guān)系數(shù)據(jù)模型1970年美國IBM公司的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關(guān)系模型。 他發(fā)表了題為“大型共享銀行數(shù)據(jù)的關(guān)系模型”(A Relation Model of Data for Large Shared Data Banks),在文中解釋了關(guān)系模型,定義了某些關(guān)系
13、代數(shù)運算,研究了數(shù)據(jù)的函數(shù)相關(guān)性,定義了關(guān)系的第三范式,從而開創(chuàng)了數(shù)據(jù)庫的關(guān)系方法和數(shù)據(jù)規(guī)范化理論的研究,為關(guān)系數(shù)據(jù)庫技術(shù)奠定了理論基礎(chǔ)。 他因此獲得了1981年的圖靈獎。 關(guān)系數(shù)據(jù)模型是以集合論中的關(guān)系概念為基礎(chǔ)發(fā)展起來的數(shù)據(jù)模型。它是目前使用最廣泛的數(shù)據(jù)模型,也是最重要的數(shù)據(jù)模型。29關(guān)系數(shù)據(jù)模型20世紀80年代以來,計算機廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關(guān)系模型,非關(guān)系系統(tǒng)的產(chǎn)品也都加上了關(guān)系接口。關(guān)系數(shù)據(jù)庫已成為目前應(yīng)用最廣泛的數(shù)據(jù)庫系統(tǒng),如現(xiàn)在廣泛使用的小型數(shù)據(jù)庫系統(tǒng)Foxpro、Access,大型數(shù)據(jù)庫系統(tǒng)Oracle、Informix、Sybase、SQL Server等都是
14、關(guān)系數(shù)據(jù)庫系統(tǒng)。30 2數(shù)據(jù)庫的分類根據(jù)數(shù)據(jù)庫所使用的數(shù)據(jù)模型,數(shù)據(jù)庫也相應(yīng)地分為三類:層次型數(shù)據(jù)庫層次型數(shù)據(jù)庫、網(wǎng)狀型數(shù)據(jù)網(wǎng)狀型數(shù)據(jù)庫庫和關(guān)系型數(shù)據(jù)庫關(guān)系型數(shù)據(jù)庫。31 1.2.4關(guān)系型數(shù)據(jù)庫的基本概念 在關(guān)系型數(shù)據(jù)庫中,以二維表(數(shù)據(jù)基本表,簡稱數(shù)據(jù)表、基本表、表,也稱為關(guān)系)的形式組織數(shù)據(jù)。 二維表的“列”稱為“字段”,每個字段表示對象的一個屬性,存儲各條記錄在該字段(屬性)的信息。 二維表的“行”稱為“記錄”,它表示了一個對象的各個屬性的取值,即對象的完整數(shù)據(jù)。 二維表的第一行,是各字段的名稱,簡稱字段名。 字段是數(shù)據(jù)表中的可訪問的最小邏輯單位 。32 1.2.4關(guān)系型數(shù)據(jù)庫的基本概念
15、二維表就可以構(gòu)成一個簡單的關(guān)系數(shù)據(jù)庫。二維表有如下基本特性:在一個二維表中,所有的記錄格式相同、長度相同。在同一個二維表中,字段名不能相同。同一字段數(shù)據(jù)的類型相同,它們均為同一屬性的值。行和列的排列順序并不重要。33 創(chuàng)建了數(shù)據(jù)庫才能使用數(shù)據(jù)庫系統(tǒng)管理數(shù)據(jù),創(chuàng)建數(shù)據(jù)庫之前,首先要進行數(shù)據(jù)庫的設(shè)計。 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計是指對一個給定的應(yīng)用環(huán)境,如“教學(xué)管理系統(tǒng)”,構(gòu)造 (設(shè)計) 最優(yōu)的數(shù)據(jù)模型,然后據(jù)此建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足用戶的各種應(yīng)用需求。 數(shù)據(jù)庫的設(shè)計優(yōu)劣將直接影響信息系統(tǒng)的質(zhì)量和運行效果。 因此,設(shè)計一個結(jié)構(gòu)優(yōu)良的數(shù)據(jù)庫是對數(shù)據(jù)進行 有效管理的前提和產(chǎn)生正
16、確信息的保證。 34 數(shù)據(jù)庫設(shè)計一般包括以下幾個步驟: 需求分析;概念模型設(shè)計即建立概念模型;邏輯模型設(shè)計即建立邏輯(數(shù)據(jù))模型并優(yōu)化設(shè)計;選擇物理模型;創(chuàng)建數(shù)據(jù)庫;數(shù)據(jù)庫的運行和維護等。 35 1.3.1需求分析首先,對要解決的實際應(yīng)用問題進行詳細的調(diào)查,明確建立數(shù)據(jù)庫系統(tǒng)的目的。如,“教學(xué)管理系統(tǒng)”主要用于教學(xué)過程中對學(xué)生信息、教師信息、課程的管理。其次,還要了解數(shù)據(jù)庫中需要存儲什么數(shù)據(jù),要具有怎樣的數(shù)據(jù)處理功能,數(shù)據(jù)庫系統(tǒng)最終用戶希望從數(shù)據(jù)庫中得到什么樣的信息,并且還要對數(shù)據(jù)進行收集、加工和整理。 36 1數(shù)據(jù)的三個不同世界數(shù)據(jù),從描述現(xiàn)實世界中事物特性到存儲在計算機中,要經(jīng)歷三個領(lǐng)域:
17、現(xiàn)實世界現(xiàn)實世界、概念世界概念世界和計算機世計算機世界界?,F(xiàn)實世界信息世界-概念模型認識抽象計算機世界-數(shù)據(jù)模型 現(xiàn)實世界中客觀對象的抽象過程37 (1)(1)現(xiàn)實現(xiàn)實世界世界由客觀存在的事物構(gòu)成,如宇宙、地球、山川、河流、學(xué)校、教師、學(xué)生、課本等。 這些客觀存在的事物稱為事物類。事物類也可以是某種抽象概念的集合,如考試成績等。 在事物之間還存在著各種各樣的聯(lián)系,如學(xué)校和學(xué)生,學(xué)生和所學(xué)的課程。而每一個具體的事物又各自具有自己的內(nèi)涵,如學(xué)生具有姓名、性別、年齡等內(nèi)涵 。38 (2)(2)概念世界概念世界是現(xiàn)實世界中的事物在人們頭腦中的反映,是對客觀事物及其聯(lián)系的一種抽象描述,故也稱為概念模型。
18、 在概念世界中,與現(xiàn)實世界的事物類、事物和內(nèi)涵相對應(yīng)的分別是實體集、實體和屬性。 概念世界中的 一些概念:(1)實體(Entity)(2)實體集(3)屬性(Attribute)(4)碼(5)聯(lián)系39(1)把客觀存在并且可以區(qū)別的事物稱為實體,把客觀存在并且可以區(qū)別的事物稱為實體,即實體是現(xiàn)實世界上任何可以明確識別的事物和事件。實體可以是具體的人、事或物,比如一個學(xué)生、一個部門,也可以是抽象事件,比如一次課,閱讀了若干本圖書等,也可以指事物之間的聯(lián)系。在“教學(xué)管理系統(tǒng)”中,“課程”、“學(xué)生”、“教師”都是實體。40(2)同一類實體的集合稱為實體集,如全體學(xué)生的記錄構(gòu)成一個完整的學(xué)生表,是一個實體
19、集。(3)描述實體的特性稱為屬性。通常一個實體或聯(lián)系具有多個特性,需要多個相應(yīng)的屬性來描述。如“學(xué)生”實體由學(xué)生編號、姓名、性別等屬性進行描述。一個屬性值具體代表一個學(xué)生。實體“學(xué)生”的屬性有:學(xué)生編號、姓名、性別、年齡、入校日期、團員否、家庭住址、簡歷。41(4)如果一個屬性或一組屬性的集合的值能夠唯一地識別實體集中的每一個實體,該屬性集可以稱作碼(或關(guān)鍵字)。如學(xué)生編號是唯一標(biāo)識學(xué)生的不重復(fù)的信息,可以選作實體集“學(xué)生”的碼。(5)在現(xiàn)實世界中,事物與事物之間總是有聯(lián)系的,這些聯(lián)系必然要在信息世界中得到反映。聯(lián)系不僅可以定義在兩個實體之間,也可以定義在一個實體或多個實體上。實體間的聯(lián)系有三
20、種類型,將在下面一小節(jié)中詳細介紹。42(3)(3)計算機世界計算機世界使用計算機存放并管理概念世界中描述的實體集、實體和屬性的數(shù)據(jù)。 在計算機世界與概念世界中的實體集、實體和屬性對應(yīng)的分別是文件、記錄和字段。 文件、記錄和字段可以直接存儲在計算機的數(shù)據(jù)庫中。 43 2概念模型的表示方法 概念模型能夠準(zhǔn)確、方便地表示信息世界的概念。表示概念模型最常用的工具是實體聯(lián)系模型 (Entity-Relation Approach,簡稱E-R模型或E-R圖) (1)實體集:用矩形框表示,框內(nèi)標(biāo)注實體名稱。(2)屬性:橢圓形表示,并用連線與實體集連接起來。(3)實體之間的聯(lián)系:也叫關(guān)系,用菱形框表示,框內(nèi)標(biāo)
21、注聯(lián)系的名稱,用連線將菱形框分別與有關(guān)的實體集相連,并在連線上標(biāo)明聯(lián)系的類型。:一對一聯(lián)系一對多聯(lián)系 多對多聯(lián)系44 2概念模型的表示方法 一對一聯(lián)系一對一聯(lián)系若對于實體集A中的一個實體,實體集B中至多有一個實體與其發(fā)生聯(lián)系;反之,B中的每一個實體至多對應(yīng)A中一個實體,則稱A與B是一對一聯(lián)系,用1:1表示,例如,一個老師如果只擔(dān)任一個班級的班主任,一個班級只有一個班主任,班級和班主任之間就構(gòu)成了一對一的聯(lián)系。一對多聯(lián)系一對多聯(lián)系若對于實體集A中的每一實體,實體集B中有一個或多個實體與之發(fā)生聯(lián)系;反之,B中的每一實體至多只能對應(yīng)于A中的一個實體,則稱A與B是一對多聯(lián)系,用1:n表示,也可以用1:
22、表示。例如,一門課程有多個成績(每個同學(xué)有一個成績),一個成績對應(yīng)一門課程,課程和成績構(gòu)成了一對多的聯(lián)系。多對多聯(lián)系多對多聯(lián)系若A中至少有一實體對應(yīng)于B中一個以上實體;反之,B中至少有一個實體對應(yīng)于A中一個以上實體,則稱A與B為多對多聯(lián)系,用m:n表示。假設(shè),一門課程有多個學(xué)生參加學(xué)習(xí),一個學(xué)生可以學(xué)習(xí)多門課程,學(xué)生與課程就構(gòu)成了多對多的聯(lián)系452概念模型的表示方法 “教師教師”、“學(xué)生學(xué)生”、“選課成績選課成績”、“課程課程”四個實體的聯(lián)四個實體的聯(lián)系:系: (1)對“學(xué)生”與“選課成績”來說是1:的聯(lián)系。因為一個學(xué)生可以學(xué)習(xí)多門課程,從而有多個成績,一個成績對應(yīng)一個學(xué)生。 (2)假設(shè)一個教
23、師可以講授多門課程,一門課程只有一個教師講授,“教師”與“課程”之間是1:的聯(lián)系。(3)一門課程有多個學(xué)生學(xué)習(xí),就有多個成績,“課程”和“選課成績”之間也是1:的聯(lián)系。463建立概念模型 E-R圖建立“教學(xué)管理系統(tǒng)”數(shù)據(jù)庫的概念模型: 首先,確定實體集與屬性。 “教學(xué)管理系統(tǒng)” 有四個實體集:教師、學(xué)生、選課成績、課程。 其次,建立實體集和它的屬性的E-R圖 。“教師”與其它實體之間關(guān)系的E-R圖 如下:47必須將信息世界的概念模型轉(zhuǎn)換成計算機世界的數(shù)據(jù)模型,數(shù)據(jù)庫管理系統(tǒng)才能處理。由于本書介紹的Access是關(guān)系型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),因此需要將概念模型轉(zhuǎn)換成關(guān)系模式,即關(guān)系模型的二維表。在
24、關(guān)系模型中,基本元素包括關(guān)系、元組、屬性、關(guān)鍵字(碼)、域、分量以及關(guān)系模式等。48關(guān)系關(guān)系:一個關(guān)系就是一張二維表。 在Access中,一個關(guān)系存儲為一個表,具有一個表名。對關(guān)系的描述稱為關(guān)系模式,一個關(guān)系模式對應(yīng)一個關(guān)系的結(jié)構(gòu)。其格式為:關(guān)系名(屬性名1,屬性名2, 屬性名n)例如學(xué)生關(guān)系的關(guān)系模式為:學(xué)生(學(xué)生編號,姓名,性別,年齡,入校日期,團員否,家庭住址,簡歷)元組元組:一個二維表(一個具體的關(guān)系)中的一行稱為元組,每一行是一個元組。 例如學(xué)生劉力所在的行是一個元組,在Access中稱作一個記錄。屬性屬性:表中的一列稱為屬性。 例如“姓名”這一列就是一個屬性,在Access中稱作一
25、個字段。關(guān)鍵字關(guān)鍵字:能夠唯一地標(biāo)識一個元組的屬性或?qū)傩缘慕M合稱為關(guān)鍵字。 在Access中對應(yīng)的是字段或字段的組合。“學(xué)生”表中的“學(xué)生編號”可以作為標(biāo)識一條記錄的關(guān)鍵字。域域:屬性的取值范圍。 例如性別屬性的取值范圍只能從“男”或“女”中取一個。49 將E-R圖表示的概念模型轉(zhuǎn)換為關(guān)系模型的步驟為:(1)將每一個實體集轉(zhuǎn)換為一個二維表,將每一個實體集轉(zhuǎn)換為一個二維表,確定主關(guān)鍵字,建立關(guān)系(2)多對多的聯(lián)系也轉(zhuǎn)為二維表。其關(guān)鍵字由相關(guān)連兩個表的關(guān)鍵字組成。將實體集轉(zhuǎn)換為一個二維表時,將實體名轉(zhuǎn)換為表名,將實體的屬性轉(zhuǎn)換成二維表的字段,將屬性名轉(zhuǎn)換為字段名稱,一個具體的實體由表中的一條記錄來
26、表示。如“教師”表,表中的每一行表示一個教師,稱為一條記錄。表中每一列稱為一個字段, 每一列的欄目名叫做字段名,如“姓名”就是一個字段名。 50“教學(xué)管理系統(tǒng)”中有四個實體集:“學(xué)生”、“教師”、“課程”、“選課成績” 。表1.3.2 “教師”表表1.3.3 “教師”表結(jié)構(gòu)一覽表51(1)將每一個實體集轉(zhuǎn)換為一個二維表(2 2)確定主關(guān)鍵字確定主關(guān)鍵字 在表的多個字段中,能夠唯一確定每個記錄的一個字段或一組字段,可以定義為主關(guān)鍵字,簡稱主鍵。 教師編號滿足主鍵的要求,將“教師編號”設(shè)置為教師表的主鍵。在上面的表結(jié)構(gòu)中給被設(shè)為主鍵的字段加了下劃線。(3 3)建立關(guān)系)建立關(guān)系根據(jù)“學(xué)生”、“選課
27、成績”、“課程”和“教師”四個實體之間存在著的聯(lián)系,建立如圖1.3.2所示的關(guān)系,具體建立的方法后面介紹。圖 1.3.2 表間關(guān)系52對于同樣的系統(tǒng)需求和數(shù)據(jù),不同的設(shè)計人員可能會設(shè)計出不同的關(guān)系模型集(數(shù)據(jù)庫表)。如何判斷設(shè)計好壞,怎樣才算是高質(zhì)量的關(guān)系模式集,可以利用數(shù)據(jù)庫理論中的規(guī)范化理論和方法,對設(shè)計出來的關(guān)系模式集進行改進和完善,以便提高數(shù)據(jù)庫應(yīng)用系統(tǒng)的性能和效率。 1不規(guī)范的關(guān)系模式(的表)引起的問題表1.3.8 匯總登記表53 1不規(guī)范的關(guān)系模式(的表)引起的問題 (1)冗余度大 如“課程名稱”等在表中多次出現(xiàn)、多次存儲,占用了更多的存儲空間,而且如果課程名稱要修改,將引起多行數(shù)
28、據(jù)的修改,不僅增加了修改工作量,而且容易出錯,可能造成數(shù)據(jù)不一致。 (2)刪除異常 如果任偉同學(xué)中途休學(xué),要刪除他的信息,但是在這個表中,只有這一條記錄保存有“高等數(shù)學(xué)”的課程名稱,刪除任偉的信息就會將“高等數(shù)學(xué)”的課程名稱也一起刪除,即有用的信息也同時被刪除了。 (3)插入異常 如果新增加一個學(xué)生,但是該學(xué)生暫時還沒有選擇課程,那么要將新增的學(xué)生信息輸入到表中時,在課程編號列就沒有值。2一個規(guī)范化的數(shù)據(jù)庫的好處:(1)由于關(guān)系中的各個數(shù)據(jù)項都是一個簡單的數(shù)或符號串,可以方便地進行存取。(2)由于關(guān)系模式的分解,可以簡化檢索操作,加快檢索速率。(3)可消除對數(shù)據(jù)進行插入、修改和刪除時的相互牽扯
29、,便于保持數(shù)據(jù)的一致性。(4)避免重復(fù)存儲,減少數(shù)據(jù)的冗余度,提高存儲空間的利用率。54*3.規(guī)范化理論的要點 關(guān)系模型要求關(guān)系必須是規(guī)范化的。 當(dāng)關(guān)系模型滿足了規(guī)范化的要求時,可以解決數(shù)據(jù)冗余度大、刪除異常和插入異常等問題,并使得數(shù)據(jù)庫的結(jié)構(gòu)更合理。 在規(guī)范化理論中,將關(guān)系規(guī)范化的條件分為五個等級,每一個等級稱為一個范式,即關(guān)系模式滿足的條件。范式的級別越高,條件越嚴格。一般只要滿足前面的第一范式、第二范式和第三范式等三個范式即可。*3.規(guī)范化理論的要點-范式(舉例)(舉例)(1)第一范式如果一個表的所有字段(屬性)都是不可分割的基本數(shù)據(jù)項,則這個表符合第一范式。 (2)第二范式如果一個表符
30、合第一范式,且每個非主關(guān)鍵字屬性都完全依賴于表的主關(guān)鍵字,則這個表符合第二范式。(3)第三范式如果一個表符合第二范式,且非主關(guān)鍵字段只依賴主關(guān)鍵字段,(即每個字段之間都不存在傳遞依賴關(guān)系),則這個表符合第三范式。 55 *3.規(guī)范化理論的要點 (1) 如果一個表的所有字段(屬性)都是不可分割的基本數(shù)據(jù)項,則這個表符合第一范式。 表1.3.9:“選課學(xué)生情況”下面有表中表,不符合第一范式。 表1.3.10 符合第一范式的表 56 *3.規(guī)范化理論的要點 (2)例:在表1.3.10中,如果它的主關(guān)鍵字由“課程編號、學(xué)號”構(gòu)成,非主關(guān)鍵字“選課學(xué)生”由學(xué)號就能決定,因此“選課學(xué)生”是部分依部分依賴賴
31、主關(guān)鍵字,不符合第二范式。因此表1.3.10結(jié)構(gòu)會出現(xiàn)刪除異常和插入異常,必須進行拆分,讓拆分以后的表要滿足第二范式。表1.3.10 不符合第二范式的表 (3)在表1.3.10中,如果主關(guān)鍵字是“課程編號、學(xué)號”,主關(guān)鍵字決定了“教師編號”,“教師編號”決定了“教師姓名”存在傳遞依賴關(guān)系,因此,表1.3.10違反了第三范式的條件,同樣會造成刪除異常和插入異常表1.3.10 不符合第三范式的表 57 1.4.1數(shù)據(jù)管理技術(shù)的幾個發(fā)展階段1.1.人工管理人工管理階階段段 2.2.文件系文件系統(tǒng)階統(tǒng)階段段 3.3.數(shù)數(shù)據(jù)據(jù)庫庫系系統(tǒng)階統(tǒng)階段段20世紀50年代中期以前, 程序之間數(shù)據(jù)不能共享。圖1.4.1 人工管理階段數(shù)據(jù)與應(yīng)用程序之間的關(guān)系20世紀60年代中期,數(shù)據(jù)以文件為單位的共享圖1.4.2 文件系統(tǒng)階段數(shù)據(jù)與應(yīng)用程序之間的關(guān)系 (1)數(shù)據(jù)的獨立性差。程序改變時,文件結(jié)構(gòu)也要隨著變化。(2)數(shù)據(jù)冗余度大。由于數(shù)據(jù)文件之間缺乏聯(lián)系,有可能同樣的數(shù)據(jù)在多個文件中重復(fù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國際關(guān)系學(xué)院《工程力學(xué)與機械設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 河北環(huán)境工程學(xué)院《護理學(xué)基礎(chǔ)技術(shù)(一)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南京航空航天大學(xué)金城學(xué)院《細胞生物學(xué)課程設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州城市職業(yè)學(xué)院《戰(zhàn)略管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東新安職業(yè)技術(shù)學(xué)院《生物化學(xué)及實驗》2023-2024學(xué)年第二學(xué)期期末試卷
- 長春師范大學(xué)《汽車底盤構(gòu)造與維修》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西華澳商貿(mào)職業(yè)學(xué)院《移動通信技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 大學(xué)生畢業(yè)實習(xí)計劃
- 大一新生軍訓(xùn)心得感悟(28篇)
- 農(nóng)村亂占耕地建房問題整治工作匯報范文(3篇)
- 外研社一起英語四年級下冊課文
- 學(xué)校辦公室主任述職報告
- 《列夫·托爾斯泰》-完整版PPT
- 高考古代詩歌鑒賞復(fù)習(xí)教案
- 負數(shù)的認識1202
- After-Effects影視特效設(shè)計教程完整版全套ppt課件
- 中國鐵塔建設(shè)維護工作培訓(xùn)PPT通用通用課件
- 新視野大學(xué)英語第三版Book 2 Unit 1 Text A
- 醫(yī)療設(shè)備清單
- SHD干燥機說明書(英)
- 藍色卡通風(fēng)格研學(xué)旅行報告PPT講座學(xué)習(xí)
評論
0/150
提交評論