數(shù)據(jù)庫的基本概念ppt課件_第1頁
數(shù)據(jù)庫的基本概念ppt課件_第2頁
數(shù)據(jù)庫的基本概念ppt課件_第3頁
數(shù)據(jù)庫的基本概念ppt課件_第4頁
數(shù)據(jù)庫的基本概念ppt課件_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、信息工程學(xué)院勞 東 青dql904126關(guān)于本課程。關(guān)于本課程。pWhy we should learn this course?p56學(xué)時(shí)實(shí)際30,實(shí)驗(yàn)26p課程安排:p10、11章選學(xué);重點(diǎn)3、4、5、6、8p作業(yè)10次;實(shí)驗(yàn)13次p課堂紀(jì)律p考核:筆試p成果:平常成果30%+考試成果70%p平常成果:作業(yè)+實(shí)驗(yàn)+出勤+課堂表現(xiàn)20102010勞東青勞東青1.2 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)1.3 數(shù)據(jù)庫運(yùn)用系統(tǒng)數(shù)據(jù)庫運(yùn)用系統(tǒng)補(bǔ)充:補(bǔ)充: SQL Server 2000環(huán)境環(huán)境20102010勞東青勞東青1.1.1 1.1.1 數(shù)據(jù)庫與數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫與數(shù)據(jù)庫管理系統(tǒng)

2、1 1數(shù)據(jù)庫數(shù)據(jù)庫DATA BASEDATA BASE,DBDB簡單地說,數(shù)據(jù)庫是指存放數(shù)據(jù)的倉庫。簡單地說,數(shù)據(jù)庫是指存放數(shù)據(jù)的倉庫。數(shù)據(jù)不僅包含數(shù)字,還包括文本、圖像、音頻、視頻等。數(shù)據(jù)不僅包含數(shù)字,還包括文本、圖像、音頻、視頻等。并且,這些數(shù)據(jù)存在一定的關(guān)聯(lián),并按一定的格式存放在并且,這些數(shù)據(jù)存在一定的關(guān)聯(lián),并按一定的格式存放在計(jì)算機(jī)內(nèi)。計(jì)算機(jī)內(nèi)。嚴(yán)厲的嚴(yán)厲的DBDB定義:定義: DB DB是指長期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有組織的、是指長期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有組織的、一致管理的相關(guān)數(shù)據(jù)的集合。一致管理的相關(guān)數(shù)據(jù)的集合。例如,把一個(gè)學(xué)校的學(xué)生、課程、學(xué)生成果等數(shù)據(jù)有序地例如,把一個(gè)學(xué)校的學(xué)生、課程、

3、學(xué)生成果等數(shù)據(jù)有序地組織并存放在計(jì)算機(jī)內(nèi),就可以構(gòu)成一個(gè)數(shù)據(jù)庫。組織并存放在計(jì)算機(jī)內(nèi),就可以構(gòu)成一個(gè)數(shù)據(jù)庫。特點(diǎn):特點(diǎn):DBDB能為各種用戶共享,具有較小冗余度、數(shù)據(jù)間聯(lián)能為各種用戶共享,具有較小冗余度、數(shù)據(jù)間聯(lián)絡(luò)嚴(yán)密而又有較高的數(shù)據(jù)獨(dú)立性。絡(luò)嚴(yán)密而又有較高的數(shù)據(jù)獨(dú)立性。他會(huì)想到什么?他會(huì)想到什么?20102010勞東青勞東青2 2數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)DATA BASE MANAGEMENT SYSTEM, DATA BASE MANAGEMENT SYSTEM, DBMSDBMSDBMSDBMS是位于用戶與是位于用戶與OSOS之間的一層數(shù)據(jù)管理軟件,它為之間的一層數(shù)據(jù)管理軟件,它為用

4、戶或運(yùn)用程序提供訪問用戶或運(yùn)用程序提供訪問DBDB的方法,包括的方法,包括DBDB的建立、查詢、的建立、查詢、更新及各種數(shù)據(jù)控制。更新及各種數(shù)據(jù)控制。DBMSDBMS總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀型、關(guān)系型和面向?qū)ο笮偷取P?、關(guān)系型和面向?qū)ο笮偷取?用戶DBMS20102010勞東青勞東青2 2數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)DBMSDBMS的詳細(xì)功能:的詳細(xì)功能:1 1數(shù)據(jù)定義功能數(shù)據(jù)定義功能DDLDDL:可定義數(shù)據(jù)庫中的數(shù)據(jù):可定義數(shù)據(jù)庫中的數(shù)據(jù)對(duì)象。對(duì)象。2 2數(shù)據(jù)支配功能數(shù)據(jù)支配功能DMLDML:可對(duì)數(shù)據(jù)庫表進(jìn)展根本:可對(duì)數(shù)據(jù)庫表進(jìn)展根

5、本操作,如插入、刪除、修正、查詢等。操作,如插入、刪除、修正、查詢等。3 3數(shù)據(jù)庫的維護(hù)功能:數(shù)據(jù)庫的維護(hù)功能:數(shù)據(jù)完好性檢查功能:保證用戶輸入的數(shù)據(jù)滿足相應(yīng)數(shù)據(jù)完好性檢查功能:保證用戶輸入的數(shù)據(jù)滿足相應(yīng)的約束條件。的約束條件。數(shù)據(jù)庫的平安性控制功能:保證只需具有權(quán)限的用戶數(shù)據(jù)庫的平安性控制功能:保證只需具有權(quán)限的用戶才干訪問數(shù)據(jù)庫中的數(shù)據(jù)。才干訪問數(shù)據(jù)庫中的數(shù)據(jù)。數(shù)據(jù)庫的并發(fā)控制功能:使多個(gè)運(yùn)用程序可在同一時(shí)數(shù)據(jù)庫的并發(fā)控制功能:使多個(gè)運(yùn)用程序可在同一時(shí)辰并發(fā)地訪問數(shù)據(jù)庫的數(shù)據(jù)。辰并發(fā)地訪問數(shù)據(jù)庫的數(shù)據(jù)。20102010勞東青勞東青2 2數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)DBMSDBMS應(yīng)提供如下

6、功能:應(yīng)提供如下功能:3 3數(shù)據(jù)庫的維護(hù)功能:數(shù)據(jù)庫的維護(hù)功能:數(shù)據(jù)庫系統(tǒng)的缺點(diǎn)恢復(fù)功能:使數(shù)據(jù)庫在運(yùn)轉(zhuǎn)出現(xiàn)缺數(shù)據(jù)庫系統(tǒng)的缺點(diǎn)恢復(fù)功能:使數(shù)據(jù)庫在運(yùn)轉(zhuǎn)出現(xiàn)缺點(diǎn)時(shí)進(jìn)展數(shù)據(jù)庫恢復(fù),以保證數(shù)據(jù)庫可靠運(yùn)轉(zhuǎn)。點(diǎn)時(shí)進(jìn)展數(shù)據(jù)庫恢復(fù),以保證數(shù)據(jù)庫可靠運(yùn)轉(zhuǎn)。4 4數(shù)據(jù)庫的維護(hù)功能數(shù)據(jù)庫的維護(hù)功能5 5數(shù)據(jù)字典數(shù)據(jù)字典DDDD:給數(shù)據(jù)流圖上每個(gè)成分加以定:給數(shù)據(jù)流圖上每個(gè)成分加以定義和闡明。義和闡明。6 6在網(wǎng)絡(luò)環(huán)境下訪問數(shù)據(jù)庫的功能。在網(wǎng)絡(luò)環(huán)境下訪問數(shù)據(jù)庫的功能。 7 7提供方便、有效地存取數(shù)據(jù)庫信息的接口和工具。提供方便、有效地存取數(shù)據(jù)庫信息的接口和工具。編程人員經(jīng)過程序開發(fā)工具與數(shù)據(jù)庫的接口編寫數(shù)據(jù)庫運(yùn)編程

7、人員經(jīng)過程序開發(fā)工具與數(shù)據(jù)庫的接口編寫數(shù)據(jù)庫運(yùn)用程序。數(shù)據(jù)庫系統(tǒng)管理員用程序。數(shù)據(jù)庫系統(tǒng)管理員DBADBA,DataBase DataBase AdminitratorAdminitrator經(jīng)過提供的工具對(duì)數(shù)據(jù)庫進(jìn)展管理。經(jīng)過提供的工具對(duì)數(shù)據(jù)庫進(jìn)展管理。20102010勞東青勞東青數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)與操作數(shù)據(jù)庫的運(yùn)用程序,加上支撐它們的硬件平臺(tái)、軟件平臺(tái)和與數(shù)據(jù)庫有關(guān)的人員一同構(gòu)成了一個(gè)完好的數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫數(shù)據(jù)庫系統(tǒng)的系統(tǒng)的構(gòu)成構(gòu)成20102010勞東青勞東青p常用數(shù)據(jù)模型:層次模型、網(wǎng)狀模型、關(guān)系模型。p層次模型:以樹狀層次構(gòu)造組織數(shù)據(jù)。圖1.2 某學(xué)校按層次模型組織的數(shù)據(jù)例

8、如20102010勞東青勞東青p網(wǎng)狀模型:每一個(gè)數(shù)據(jù)用一個(gè)節(jié)點(diǎn)表示,每個(gè)節(jié)點(diǎn)與網(wǎng)狀模型:每一個(gè)數(shù)據(jù)用一個(gè)節(jié)點(diǎn)表示,每個(gè)節(jié)點(diǎn)與其他節(jié)點(diǎn)都有聯(lián)絡(luò),這樣,數(shù)據(jù)庫中的一切數(shù)據(jù)節(jié)點(diǎn)就其他節(jié)點(diǎn)都有聯(lián)絡(luò),這樣,數(shù)據(jù)庫中的一切數(shù)據(jù)節(jié)點(diǎn)就構(gòu)成了一個(gè)復(fù)雜的網(wǎng)絡(luò)。構(gòu)成了一個(gè)復(fù)雜的網(wǎng)絡(luò)。圖1.3 按網(wǎng)狀模型組織的數(shù)據(jù)例如20102010勞東青勞東青3 3關(guān)系模型:以二維表格關(guān)系表的方式組織關(guān)系模型:以二維表格關(guān)系表的方式組織數(shù)據(jù)庫中的數(shù)據(jù)。數(shù)據(jù)庫中的數(shù)據(jù)。例如,在學(xué)生成果管理系統(tǒng)所涉及的學(xué)生、課程和例如,在學(xué)生成果管理系統(tǒng)所涉及的學(xué)生、課程和成果三個(gè)表中。學(xué)生表涉及的主要信息有學(xué)號(hào)、姓名、成果三個(gè)表中。學(xué)生表涉及的主

9、要信息有學(xué)號(hào)、姓名、性別、出生時(shí)間、專業(yè)、總學(xué)分、備注。課程表涉及性別、出生時(shí)間、專業(yè)、總學(xué)分、備注。課程表涉及的主要信息有課程號(hào)、課程名、開課學(xué)期、學(xué)時(shí)和學(xué)的主要信息有課程號(hào)、課程名、開課學(xué)期、學(xué)時(shí)和學(xué)分。成果表涉及的主要信息有學(xué)號(hào)、課程號(hào)和成果。分。成果表涉及的主要信息有學(xué)號(hào)、課程號(hào)和成果。學(xué) 號(hào)姓 名性 別出 生 時(shí) 間專 業(yè)總 學(xué) 分備 注081101王林男1990-02-10計(jì)算機(jī)50081103王燕女1989-10-06計(jì)算機(jī)50081108林一帆男1989-08-05計(jì)算機(jī)52已提前修完一門課081202王林男1989-01-29通信工程40有一門課不及格,待補(bǔ)考081204馬琳

10、琳女1989-02-10通信工程42學(xué)生關(guān)系表20102010勞東青勞東青課 程 號(hào)課 程 名開 課 學(xué) 期學(xué) 時(shí)學(xué) 分0101計(jì)算機(jī)基礎(chǔ)18050102程序設(shè)計(jì)與語言26840206離散數(shù)學(xué)4684學(xué) 號(hào)課 程 號(hào)成 績學(xué) 號(hào)課 程 號(hào)成 績08110110180081108101850811011027808110810264081101206760811082068708110310162081202101650811031027008120410191 課程關(guān)系表成果關(guān)系表一行一一行一個(gè)記錄個(gè)記錄一列一個(gè)字段字段名20102010勞東青勞東青1313p假設(shè)給每個(gè)關(guān)系表取一個(gè)名字,那么有

11、n個(gè)字段的關(guān)系表的構(gòu)造可表示為關(guān)系表名字段名1,字段名2,字段名n,通常把關(guān)系表的構(gòu)造稱為關(guān)系方式。p例1:學(xué)生表取名為XSB,那么學(xué)生表的關(guān)系方式為:pXSB學(xué)號(hào),姓名,性別,出生時(shí)間,專業(yè),總學(xué)分,備注p例2:成果表取名為CJB,那么成果表的關(guān)系方式為:pCJB學(xué)號(hào),課程號(hào),成果,學(xué)分p在關(guān)系表中,假設(shè)一個(gè)字段或幾個(gè)字段組合的值可獨(dú)一標(biāo)識(shí)其對(duì)應(yīng)的記錄,那么稱該字段或字段組合為碼。p一個(gè)表可以有多個(gè)碼,但只需一個(gè)主碼。關(guān)系方式中,普通用下劃線標(biāo)出主碼。20102010勞東青勞東青p 關(guān)系型數(shù)據(jù)庫的規(guī)范言語是SQLStructured Query Language,構(gòu)造化查詢言語。p SQL言

12、語的功能包括數(shù)據(jù)查詢、數(shù)據(jù)支配、數(shù)據(jù)定義和數(shù)據(jù)控制4部分。p SQL言語簡約、方便、適用,為完成其中心功能只用了6個(gè)動(dòng)詞:SELECT、CREATE、INSERT、UPDATE、DELETE、GRANTREVOKE,目前已成為運(yùn)用最廣的關(guān)系數(shù)據(jù)庫言語。p SQL言語易學(xué)易用,作為關(guān)系數(shù)據(jù)庫的規(guī)范言語,它已被眾多商用數(shù)據(jù)庫管理系統(tǒng)產(chǎn)品所采用。不過,由于不同的數(shù)據(jù)庫管理系統(tǒng)在其實(shí)際過程中都對(duì)SQL規(guī)范做了某些編改和擴(kuò)展,所以,實(shí)踐上不同數(shù)據(jù)庫管理系統(tǒng)之間的SQL言語不能完全通用。例如,微軟公司的SQL Server數(shù)據(jù)庫系統(tǒng)支持的是Transact-SQL簡稱T-SQL,而甲骨文公司的Oracle

13、 數(shù)據(jù)庫所運(yùn)用的SQL言語那么是PL-SQL。20102010勞東青勞東青1515p 數(shù)據(jù)庫設(shè)計(jì)的三個(gè)關(guān)鍵步驟:概念構(gòu)造設(shè)計(jì)、邏輯構(gòu)造設(shè)計(jì)、物理設(shè)計(jì)。p 1.2.1 概念構(gòu)造設(shè)計(jì)p 實(shí)體entity:客觀存在,可以相互區(qū)別的事物稱為實(shí)體。 p 實(shí)體集entity set:性質(zhì)一樣的同類實(shí)體的集合,稱為實(shí)體集。如:學(xué)生實(shí)體集、課程實(shí)體集等p 屬性attribute:實(shí)體有很多特性,每一個(gè)特性稱為屬性。p 如學(xué)生實(shí)體的學(xué)號(hào)、姓名、班級(jí)、出生日期等。p 每一個(gè)屬性有一個(gè)值域,其類型可以是整數(shù)型、實(shí)數(shù)型、字符串型等。 p 實(shí)體集中的實(shí)體彼此間是不同的,區(qū)別不同實(shí)體的屬性或?qū)傩越M合稱為碼或稱鍵。p 每一

14、個(gè)實(shí)體集都可以指定一個(gè)碼為主碼。20102010勞東青勞東青16161.2.1 1.2.1 概念構(gòu)造設(shè)計(jì)概念構(gòu)造設(shè)計(jì)每一個(gè)實(shí)體集及其屬性,都每一個(gè)實(shí)體集及其屬性,都可以用圖來描畫。此時(shí)可以用圖來描畫。此時(shí),通常用矩形框表示實(shí),通常用矩形框表示實(shí)體集,圓角矩形框表示體集,圓角矩形框表示屬性,用線段銜接實(shí)體屬性,用線段銜接實(shí)體集與屬性。當(dāng)一個(gè)屬性集與屬性。當(dāng)一個(gè)屬性或?qū)傩越M合指定為主碼或?qū)傩越M合指定為主碼時(shí),在實(shí)體集與屬性的時(shí),在實(shí)體集與屬性的銜接線上標(biāo)志一斜線。銜接線上標(biāo)志一斜線。圖1.4 學(xué)生和課程實(shí)體集屬性的描畫20102010勞東青勞東青17171.2.1 1.2.1 概念構(gòu)造設(shè)計(jì)概念構(gòu)造

15、設(shè)計(jì)假照實(shí)體集假照實(shí)體集A A和實(shí)體集和實(shí)體集B B之間存在各種關(guān)系,通常把這些之間存在各種關(guān)系,通常把這些關(guān)系稱為聯(lián)絡(luò)。關(guān)系稱為聯(lián)絡(luò)。描畫實(shí)體集及實(shí)體集聯(lián)絡(luò)的圖就是實(shí)體描畫實(shí)體集及實(shí)體集聯(lián)絡(luò)的圖就是實(shí)體EntityEntity- -聯(lián)絡(luò)聯(lián)絡(luò)RelationshipRelationship圖,簡稱圖,簡稱E-RE-R圖。圖。 E-R E-R圖通常用來描圖通常用來描畫實(shí)體畫實(shí)體- -聯(lián)絡(luò)模型,即聯(lián)絡(luò)模型,即E-RE-R模型。模型。E-RE-R圖的表示方法:圖的表示方法:矩形矩形實(shí)體;實(shí)體;圓形圓形實(shí)體或聯(lián)絡(luò)的屬性;實(shí)體或聯(lián)絡(luò)的屬性;菱形菱形聯(lián)絡(luò)。聯(lián)絡(luò)。概念構(gòu)造設(shè)計(jì):指從分析用戶工程設(shè)計(jì)的數(shù)據(jù)對(duì)象

16、及數(shù)概念構(gòu)造設(shè)計(jì):指從分析用戶工程設(shè)計(jì)的數(shù)據(jù)對(duì)象及數(shù)據(jù)對(duì)象之間的聯(lián)絡(luò)出發(fā),到獲取據(jù)對(duì)象之間的聯(lián)絡(luò)出發(fā),到獲取E-RE-R圖的這一過程。圖的這一過程。20102010勞東青勞東青1 1一對(duì)一的聯(lián)絡(luò)一對(duì)一的聯(lián)絡(luò)1 : 11 : 1A A中的一個(gè)實(shí)體至多與中的一個(gè)實(shí)體至多與B B中中的一個(gè)實(shí)體相聯(lián)絡(luò),的一個(gè)實(shí)體相聯(lián)絡(luò),B B中的一中的一個(gè)實(shí)體也至多與個(gè)實(shí)體也至多與A A中的一個(gè)實(shí)中的一個(gè)實(shí)體相聯(lián)絡(luò)。體相聯(lián)絡(luò)。例如,例如,“班級(jí)與班級(jí)與“正班正班長這兩個(gè)實(shí)體集之間的聯(lián)長這兩個(gè)實(shí)體集之間的聯(lián)絡(luò)是一對(duì)一的聯(lián)絡(luò),由于一絡(luò)是一對(duì)一的聯(lián)絡(luò),由于一個(gè)班級(jí)只需一個(gè)正班長,反個(gè)班級(jí)只需一個(gè)正班長,反過來,一個(gè)正班長只

17、屬于一過來,一個(gè)正班長只屬于一個(gè)班級(jí)。個(gè)班級(jí)。圖1.5 “班級(jí)與“正班長實(shí)體集E-R模型p 兩個(gè)實(shí)體之間能夠有三種聯(lián)絡(luò)。人數(shù)人數(shù)屬于屬于正班長正班長班級(jí)班級(jí)姓名姓名學(xué)號(hào)學(xué)號(hào)班級(jí)編號(hào)班級(jí)編號(hào)院系院系專業(yè)專業(yè)1120102010勞東青勞東青2 2一對(duì)多的聯(lián)絡(luò)一對(duì)多的聯(lián)絡(luò)1 : n1 : nA A中的一個(gè)實(shí)體可以與中的一個(gè)實(shí)體可以與B B中中的多個(gè)實(shí)體相聯(lián)絡(luò),而的多個(gè)實(shí)體相聯(lián)絡(luò),而B B中的中的一個(gè)實(shí)體至多與一個(gè)實(shí)體至多與A A中的一個(gè)實(shí)中的一個(gè)實(shí)體相聯(lián)絡(luò)。體相聯(lián)絡(luò)。例如,例如,“班級(jí)與班級(jí)與“學(xué)生學(xué)生這兩個(gè)實(shí)體集之間的聯(lián)絡(luò)這兩個(gè)實(shí)體集之間的聯(lián)絡(luò)是一對(duì)多的聯(lián)絡(luò),由于,一是一對(duì)多的聯(lián)絡(luò),由于,一個(gè)班級(jí)

18、可有假設(shè)干學(xué)生,反個(gè)班級(jí)可有假設(shè)干學(xué)生,反過來,一個(gè)學(xué)生只能屬于一過來,一個(gè)學(xué)生只能屬于一個(gè)班級(jí)。個(gè)班級(jí)。圖1.6 “學(xué)生與“班級(jí)兩個(gè)實(shí)體集的E-R模型人數(shù)人數(shù)屬于屬于學(xué)生學(xué)生班級(jí)班級(jí)姓名姓名學(xué)號(hào)學(xué)號(hào)班級(jí)編號(hào)班級(jí)編號(hào)院系院系專業(yè)專業(yè)姓名姓名姓名姓名姓名姓名姓名姓名姓名姓名1n20102010勞東青勞東青3 3多對(duì)多的聯(lián)絡(luò)多對(duì)多的聯(lián)絡(luò)m : nm : nA A中的一個(gè)實(shí)體可以與中的一個(gè)實(shí)體可以與B B中中的多個(gè)實(shí)體相聯(lián)絡(luò),而的多個(gè)實(shí)體相聯(lián)絡(luò),而B B中的中的一個(gè)實(shí)體也可與一個(gè)實(shí)體也可與A A中的多個(gè)實(shí)中的多個(gè)實(shí)體相聯(lián)絡(luò)。體相聯(lián)絡(luò)。例如,例如,“學(xué)生與學(xué)生與“課程課程這兩個(gè)實(shí)體集之間的聯(lián)絡(luò)是這兩個(gè)

19、實(shí)體集之間的聯(lián)絡(luò)是多對(duì)多的聯(lián)絡(luò),由于,一個(gè)學(xué)多對(duì)多的聯(lián)絡(luò),由于,一個(gè)學(xué)生可選多門課程,反過來,一生可選多門課程,反過來,一門課程可被多個(gè)學(xué)生選修。門課程可被多個(gè)學(xué)生選修。圖1.7 “學(xué)生與“課程實(shí)體集間的E-R模型學(xué)分學(xué)分選課選課學(xué)生學(xué)生課程課程姓名姓名學(xué)號(hào)學(xué)號(hào)課程號(hào)課程號(hào)課程名課程名學(xué)時(shí)學(xué)時(shí)姓名姓名姓名姓名姓名姓名姓名姓名姓名姓名nm課程名課程名20102010勞東青勞東青p 邏輯構(gòu)造設(shè)計(jì):指將概念構(gòu)造設(shè)計(jì)階段所得到的概念模型邏輯構(gòu)造設(shè)計(jì):指將概念構(gòu)造設(shè)計(jì)階段所得到的概念模型E-R模型轉(zhuǎn)換為詳細(xì)模型轉(zhuǎn)換為詳細(xì)DBMS所能支持的數(shù)據(jù)模型即邏輯構(gòu)造,并所能支持的數(shù)據(jù)模型即邏輯構(gòu)造,并對(duì)其進(jìn)展優(yōu)化

20、的過程。對(duì)其進(jìn)展優(yōu)化的過程。p 1、1 : 1聯(lián)絡(luò)的聯(lián)絡(luò)的E-R圖到關(guān)系方式的轉(zhuǎn)換圖到關(guān)系方式的轉(zhuǎn)換p 1 1的聯(lián)絡(luò)既可單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,也可以不單獨(dú)對(duì)應(yīng)一的聯(lián)絡(luò)既可單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,也可以不單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式。個(gè)關(guān)系方式。p 1聯(lián)絡(luò)單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,那么由聯(lián)絡(luò)屬性、參與聯(lián)絡(luò)聯(lián)絡(luò)單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,那么由聯(lián)絡(luò)屬性、參與聯(lián)絡(luò)的各實(shí)體集的主碼屬性構(gòu)成關(guān)系方式,其主碼可選參與聯(lián)絡(luò)的實(shí)體的各實(shí)體集的主碼屬性構(gòu)成關(guān)系方式,其主碼可選參與聯(lián)絡(luò)的實(shí)體集的任一方的主碼。集的任一方的主碼。p 例如,對(duì)于圖例如,對(duì)于圖1.5描畫的描畫的“班級(jí)班級(jí)BJB與與“正班長正班長BZB實(shí)體集經(jīng)過屬于實(shí)體集經(jīng)

21、過屬于SYB聯(lián)絡(luò)聯(lián)絡(luò)E-R模型,可設(shè)計(jì)如下關(guān)系方式:模型,可設(shè)計(jì)如下關(guān)系方式:20102010勞東青勞東青BJB班級(jí)編號(hào),院系,專業(yè),人數(shù) BZB學(xué)號(hào),姓名SYB學(xué)號(hào),班級(jí)編號(hào)2聯(lián)絡(luò)不單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,聯(lián)絡(luò)的屬性及一方的主碼參與另一方實(shí)體集對(duì)應(yīng)的關(guān)系方式中。例如,對(duì)于圖1.5描畫的“班級(jí)BJB與“正班長BZB實(shí)體集經(jīng)過屬于SYB聯(lián)絡(luò)E-R模型,可設(shè)計(jì)如下關(guān)系方式:BJB班級(jí)編號(hào),院系,專業(yè),人數(shù)BZB學(xué)號(hào),姓名,班級(jí)編號(hào)或者BJB班級(jí)編號(hào),院系,專業(yè),人數(shù),學(xué)號(hào)BZB學(xué)號(hào),姓名20102010勞東青勞東青2、1 : n聯(lián)絡(luò)的聯(lián)絡(luò)的E-R圖到關(guān)系方式的轉(zhuǎn)換圖到關(guān)系方式的轉(zhuǎn)換1 n的聯(lián)絡(luò)既可單

22、獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,也可以不單獨(dú)對(duì)應(yīng)一個(gè)的聯(lián)絡(luò)既可單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,也可以不單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式。關(guān)系方式。1假設(shè)聯(lián)絡(luò)單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,那么由聯(lián)絡(luò)的屬性、參假設(shè)聯(lián)絡(luò)單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,那么由聯(lián)絡(luò)的屬性、參與聯(lián)絡(luò)的各實(shí)體集的主碼屬性構(gòu)成關(guān)系方式,與聯(lián)絡(luò)的各實(shí)體集的主碼屬性構(gòu)成關(guān)系方式,n端的主碼作為該關(guān)系端的主碼作為該關(guān)系方式的主碼。方式的主碼。例如,對(duì)于圖例如,對(duì)于圖1.6描畫的描畫的“班級(jí)班級(jí)BJB與與“學(xué)生學(xué)生XSB實(shí)體集實(shí)體集E-R模型,可設(shè)計(jì)如下關(guān)系方式:模型,可設(shè)計(jì)如下關(guān)系方式:BJB班級(jí)編號(hào),院系,專業(yè),人數(shù)班級(jí)編號(hào),院系,專業(yè),人數(shù)XSB 學(xué)號(hào),姓名,性別,出生時(shí)間,專

23、業(yè),總學(xué)分,備注學(xué)號(hào),姓名,性別,出生時(shí)間,專業(yè),總學(xué)分,備注SYB 學(xué)號(hào),班級(jí)編號(hào)學(xué)號(hào),班級(jí)編號(hào)20102010勞東青勞東青2、1 : n聯(lián)絡(luò)的聯(lián)絡(luò)的E-R圖到關(guān)系方式的轉(zhuǎn)換圖到關(guān)系方式的轉(zhuǎn)換2假設(shè)聯(lián)絡(luò)不單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,那么將聯(lián)絡(luò)假設(shè)聯(lián)絡(luò)不單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,那么將聯(lián)絡(luò)的屬性及的屬性及1端的主碼參與端的主碼參與n端實(shí)體集對(duì)應(yīng)的關(guān)系方式中,端實(shí)體集對(duì)應(yīng)的關(guān)系方式中,主碼仍為主碼仍為n端的主碼。端的主碼。例如,對(duì)于圖例如,對(duì)于圖1.6描畫的描畫的“班級(jí)班級(jí)BJB與與“學(xué)生學(xué)生XSB實(shí)體集實(shí)體集E-R模型,可設(shè)計(jì)如下關(guān)系方式:模型,可設(shè)計(jì)如下關(guān)系方式:BJB班級(jí)編號(hào),院系,專業(yè),人數(shù)班級(jí)編

24、號(hào),院系,專業(yè),人數(shù)XSB 學(xué)號(hào),姓名,性別,出生時(shí)間,專業(yè),總學(xué)分,學(xué)號(hào),姓名,性別,出生時(shí)間,專業(yè),總學(xué)分,備注,班級(jí)編號(hào)備注,班級(jí)編號(hào)20102010勞東青勞東青3、m : n聯(lián)絡(luò)的聯(lián)絡(luò)的E-R圖到關(guān)系方式的轉(zhuǎn)換圖到關(guān)系方式的轉(zhuǎn)換m : n的聯(lián)絡(luò)單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,該關(guān)系方式包括聯(lián)絡(luò)的屬的聯(lián)絡(luò)單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系方式,該關(guān)系方式包括聯(lián)絡(luò)的屬性、參與聯(lián)絡(luò)的各實(shí)體集的主碼屬性,該關(guān)系方式的主碼由各實(shí)體性、參與聯(lián)絡(luò)的各實(shí)體集的主碼屬性,該關(guān)系方式的主碼由各實(shí)體集的主碼屬性共同組成。集的主碼屬性共同組成。例如,對(duì)于圖例如,對(duì)于圖1.7描畫的描畫的“學(xué)生學(xué)生XSB與與“課程課程KCB實(shí)體實(shí)體集之間的

25、聯(lián)絡(luò)可設(shè)計(jì)如下關(guān)系方式:集之間的聯(lián)絡(luò)可設(shè)計(jì)如下關(guān)系方式:XSB學(xué)號(hào),姓名,性別,出生時(shí)間,專業(yè),總學(xué)分,備注學(xué)號(hào),姓名,性別,出生時(shí)間,專業(yè),總學(xué)分,備注KCB課程號(hào),課程稱號(hào),開課學(xué)期,學(xué)時(shí),學(xué)分課程號(hào),課程稱號(hào),開課學(xué)期,學(xué)時(shí),學(xué)分CJB學(xué)號(hào),課程號(hào),成果學(xué)號(hào),課程號(hào),成果關(guān)系方式關(guān)系方式CJB的主碼是由的主碼是由“學(xué)號(hào)和學(xué)號(hào)和“課程號(hào)兩個(gè)屬性組合起來課程號(hào)兩個(gè)屬性組合起來構(gòu)成的一個(gè)主碼,一個(gè)關(guān)系方式只能有一個(gè)主碼。構(gòu)成的一個(gè)主碼,一個(gè)關(guān)系方式只能有一個(gè)主碼。20102010勞東青勞東青數(shù)據(jù)的物理模型指數(shù)據(jù)的存儲(chǔ)構(gòu)造,如對(duì)數(shù)據(jù)庫物理文件、索引文件的組織方式、文件的存取途徑,內(nèi)存的管理等。物

26、理模型對(duì)用戶是不可見的,它不僅與數(shù)據(jù)庫管理系統(tǒng)有關(guān),還與操作系統(tǒng)甚至硬件有關(guān)。20102010勞東青勞東青1.3.1 數(shù)據(jù)庫的銜接方式數(shù)據(jù)庫的銜接方式客戶端運(yùn)用程序或運(yùn)用效力器向數(shù)據(jù)庫效力器懇求效客戶端運(yùn)用程序或運(yùn)用效力器向數(shù)據(jù)庫效力器懇求效力時(shí),必需首先和數(shù)據(jù)庫建立銜接。力時(shí),必需首先和數(shù)據(jù)庫建立銜接。1、ODBC數(shù)據(jù)庫接口數(shù)據(jù)庫接口ODBC即開放式數(shù)據(jù)庫互連即開放式數(shù)據(jù)庫互連Open DataBase Connectivity,是微軟公司推出的一種實(shí)現(xiàn)運(yùn)用程序和,是微軟公司推出的一種實(shí)現(xiàn)運(yùn)用程序和關(guān)系數(shù)據(jù)庫之間通訊的接口規(guī)范。符合規(guī)范的數(shù)據(jù)庫就可關(guān)系數(shù)據(jù)庫之間通訊的接口規(guī)范。符合規(guī)范的數(shù)據(jù)

27、庫就可以經(jīng)過以經(jīng)過SQL言語編寫的命令對(duì)數(shù)據(jù)庫進(jìn)展操作,但只針對(duì)言語編寫的命令對(duì)數(shù)據(jù)庫進(jìn)展操作,但只針對(duì)關(guān)系數(shù)據(jù)庫。目前一切的關(guān)系數(shù)據(jù)庫都符合該規(guī)范如關(guān)系數(shù)據(jù)庫。目前一切的關(guān)系數(shù)據(jù)庫都符合該規(guī)范如SQL Server,Oracle,Access,Excel等。等。ODBC本質(zhì)上是一組數(shù)據(jù)庫訪問本質(zhì)上是一組數(shù)據(jù)庫訪問API運(yùn)用程序編程接運(yùn)用程序編程接口,它由一組函數(shù)調(diào)用組成,中心是口,它由一組函數(shù)調(diào)用組成,中心是SQL語句,其構(gòu)造語句,其構(gòu)造如圖如圖1.8所示。所示。ODBC管理器根據(jù)注冊(cè)的管理器根據(jù)注冊(cè)的數(shù)據(jù)源提供的數(shù)據(jù)源提供的DB位置、位置、DB類型、類型、ODBC驅(qū)動(dòng)程序驅(qū)動(dòng)程序等信息,建

28、立起等信息,建立起ODBC與與詳細(xì)數(shù)據(jù)庫的聯(lián)絡(luò)。詳細(xì)數(shù)據(jù)庫的聯(lián)絡(luò)。20102010勞東青勞東青b 2OLE DB數(shù)據(jù)庫接口數(shù)據(jù)庫接口b OLE DB即數(shù)據(jù)庫鏈接和嵌入對(duì)象即數(shù)據(jù)庫鏈接和嵌入對(duì)象Object Linking and EMBedding DataBase。OLE DB是微軟提出的基于是微軟提出的基于COM思想且面思想且面向?qū)ο蟮囊环N技術(shù)規(guī)范,其目的是提供一種一致的數(shù)據(jù)訪問接口向?qū)ο蟮囊环N技術(shù)規(guī)范,其目的是提供一種一致的數(shù)據(jù)訪問接口來訪問各種數(shù)據(jù)源。來訪問各種數(shù)據(jù)源。b 這里所說的這里所說的“數(shù)據(jù)除了規(guī)范的關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)之外,數(shù)據(jù)除了規(guī)范的關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)之外,還包括郵件數(shù)

29、據(jù)、還包括郵件數(shù)據(jù)、Web上的文本或圖形、目錄效力上的文本或圖形、目錄效力Directory Services、主機(jī)系統(tǒng)中的文件和地理數(shù)據(jù)以及自定義業(yè)務(wù)對(duì)象等。、主機(jī)系統(tǒng)中的文件和地理數(shù)據(jù)以及自定義業(yè)務(wù)對(duì)象等。b OLE DB規(guī)范的中心內(nèi)容就是,提供一種一樣的訪問接口,使得規(guī)范的中心內(nèi)容就是,提供一種一樣的訪問接口,使得數(shù)據(jù)的運(yùn)用者運(yùn)用程序可以運(yùn)用同樣的方法訪問各種數(shù)據(jù),數(shù)據(jù)的運(yùn)用者運(yùn)用程序可以運(yùn)用同樣的方法訪問各種數(shù)據(jù),而不用思索數(shù)據(jù)的詳細(xì)存儲(chǔ)地點(diǎn)、格式或類型。而不用思索數(shù)據(jù)的詳細(xì)存儲(chǔ)地點(diǎn)、格式或類型。20102010勞東青勞東青b 3ADO數(shù)據(jù)庫接口數(shù)據(jù)庫接口b ADOActiveX Da

30、ta Objects是微軟公司開發(fā)的基于是微軟公司開發(fā)的基于COM的數(shù)據(jù)的數(shù)據(jù)庫運(yùn)用程序接口,經(jīng)過庫運(yùn)用程序接口,經(jīng)過ADO銜接數(shù)據(jù)庫,可以靈敏地操作數(shù)據(jù)庫中銜接數(shù)據(jù)庫,可以靈敏地操作數(shù)據(jù)庫中的數(shù)據(jù)。的數(shù)據(jù)。 圖1.10 ADO訪問SQL Server的接口b 運(yùn)用ADO訪問SQL Server數(shù)據(jù)庫有兩種途徑:一種是經(jīng)過ODBC驅(qū)動(dòng)程序,另一種是經(jīng)過SQL Server公用的OLE DB Provider,后者有更高的訪問效率。20102010勞東青勞東青b 4ADO.NET數(shù)據(jù)庫接口數(shù)據(jù)庫接口b ASP.NET運(yùn)用運(yùn)用ADO.NET數(shù)據(jù)模型。該模型從數(shù)據(jù)模型。該模型從ADO開展而來,開展而

31、來,但它不只是對(duì)但它不只是對(duì)ADO的改良,而是采用了一種全新的技術(shù)。的改良,而是采用了一種全新的技術(shù)。主要表如今以下幾個(gè)方面。主要表如今以下幾個(gè)方面。b 1ADO.NET 不是采用不是采用 ActiveX 技術(shù),而是與技術(shù),而是與.NET框架框架嚴(yán)密結(jié)合的產(chǎn)物。嚴(yán)密結(jié)合的產(chǎn)物。b 2ADO.NET 包含對(duì)包含對(duì) XML規(guī)范的完全支持,這對(duì)于跨規(guī)范的完全支持,這對(duì)于跨平臺(tái)交換數(shù)據(jù)具有重要的意義。平臺(tái)交換數(shù)據(jù)具有重要的意義。b 3ADO.NET 既能在與數(shù)據(jù)源銜接的環(huán)境下任務(wù),又既能在與數(shù)據(jù)源銜接的環(huán)境下任務(wù),又能在斷開與數(shù)據(jù)源銜接的條件下任務(wù)。特別是后者,非常能在斷開與數(shù)據(jù)源銜接的條件下任務(wù)。特

32、別是后者,非常適宜于網(wǎng)絡(luò)運(yùn)用的需求。由于在網(wǎng)絡(luò)環(huán)境下,堅(jiān)持與數(shù)據(jù)適宜于網(wǎng)絡(luò)運(yùn)用的需求。由于在網(wǎng)絡(luò)環(huán)境下,堅(jiān)持與數(shù)據(jù)源銜接,不符合網(wǎng)站的要求,不僅效率低,付出的代價(jià)高,源銜接,不符合網(wǎng)站的要求,不僅效率低,付出的代價(jià)高,而且經(jīng)常會(huì)引發(fā)多個(gè)用戶同時(shí)訪問帶來的沖突。因此而且經(jīng)常會(huì)引發(fā)多個(gè)用戶同時(shí)訪問帶來的沖突。因此ADO.NET系統(tǒng)集中主要精神來處理在斷開與數(shù)據(jù)源銜接的系統(tǒng)集中主要精神來處理在斷開與數(shù)據(jù)源銜接的條件下的數(shù)據(jù)處置問題。條件下的數(shù)據(jù)處置問題。20102010勞東青勞東青ADO.NET 提供了面向?qū)ο蟮臄?shù)據(jù)庫視圖,并且在ADO.NET 對(duì)象中封裝了許多數(shù)據(jù)庫屬性和關(guān)系。最重要的是,ADO.

33、NET 經(jīng)過多種方式封裝和隱藏了很多數(shù)據(jù)庫訪問的細(xì)節(jié)。用戶可以完全不知道對(duì)象在與 ADO.NET 對(duì)象交互,也不用擔(dān)憂數(shù)據(jù)挪動(dòng)到另外一個(gè)數(shù)據(jù)庫或者從另一個(gè)數(shù)據(jù)庫獲得數(shù)據(jù)的細(xì)節(jié)問題。圖1.11所示為ADO.NET 架構(gòu)總覽。20102010勞東青勞東青b 5JDBC數(shù)據(jù)庫接口數(shù)據(jù)庫接口b 在在JDBC API中有兩層接口:運(yùn)用程序?qū)雍万?qū)動(dòng)程序?qū)?,中有兩層接口:運(yùn)用程序?qū)雍万?qū)動(dòng)程序?qū)?,前者使開發(fā)人員可以經(jīng)過前者使開發(fā)人員可以經(jīng)過SQL調(diào)用數(shù)據(jù)庫和獲得結(jié)果,后調(diào)用數(shù)據(jù)庫和獲得結(jié)果,后者處置與詳細(xì)數(shù)據(jù)庫驅(qū)動(dòng)程序相關(guān)的一切通訊。者處置與詳細(xì)數(shù)據(jù)庫驅(qū)動(dòng)程序相關(guān)的一切通訊。b 運(yùn)用運(yùn)用JDBC接口對(duì)數(shù)據(jù)庫操

34、作有如下優(yōu)點(diǎn):接口對(duì)數(shù)據(jù)庫操作有如下優(yōu)點(diǎn):b 1JDBC API與與ODBC非常類似,有利于用戶了解。非常類似,有利于用戶了解。b 2使編程人員從復(fù)雜的驅(qū)動(dòng)器調(diào)用命令和函數(shù)中解使編程人員從復(fù)雜的驅(qū)動(dòng)器調(diào)用命令和函數(shù)中解脫出來,而努力于運(yùn)用程序功能的實(shí)現(xiàn)。脫出來,而努力于運(yùn)用程序功能的實(shí)現(xiàn)。b 3JDBC支持不同的關(guān)系數(shù)據(jù)庫,加強(qiáng)了程序的可移支持不同的關(guān)系數(shù)據(jù)庫,加強(qiáng)了程序的可移植性。植性。b 運(yùn)用運(yùn)用JDBC的主要缺陷:訪問數(shù)據(jù)記錄的速度會(huì)遭到一的主要缺陷:訪問數(shù)據(jù)記錄的速度會(huì)遭到一定影響;此外,定影響;此外,JDBC構(gòu)造中包含了不同廠家的產(chǎn)品,這給構(gòu)造中包含了不同廠家的產(chǎn)品,這給數(shù)據(jù)源的更改帶來了較大費(fèi)事。數(shù)據(jù)源的更改帶來了較大費(fèi)事。20102010勞東青勞東青b 6數(shù)據(jù)庫銜接池技術(shù)數(shù)據(jù)庫銜接池技術(shù)b 網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)庫運(yùn)用,由于用戶眾多,運(yùn)用網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)庫運(yùn)用,由于用戶眾多,運(yùn)用傳統(tǒng)的傳統(tǒng)的JDBC方式進(jìn)展數(shù)據(jù)庫銜接,系統(tǒng)資源開銷過方式進(jìn)展數(shù)據(jù)庫銜接,系統(tǒng)資源開銷過大,這成為制約大型企業(yè)級(jí)運(yùn)用

溫馨提示

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

評(píng)論

0/150

提交評(píng)論