網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用_第1頁
網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用_第2頁
網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用_第3頁
網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用_第4頁
網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用_第5頁
已閱讀5頁,還剩147頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用介紹本課程的特點(diǎn)、重點(diǎn)和難點(diǎn)、知識(shí)面、學(xué)習(xí)方法一、課程簡介1.數(shù)據(jù)庫作為信息處理最先進(jìn)的技術(shù)和最有效的工具,則從一般的大型軟件發(fā)展成為了現(xiàn)代計(jì)算環(huán)境的核心技術(shù)。各行各業(yè)均需應(yīng)用信息系統(tǒng),而數(shù)據(jù)庫是信息系統(tǒng)的核心。2.國際互連網(wǎng)絡(luò)的信息系統(tǒng)和動(dòng)態(tài)網(wǎng)頁發(fā)布同樣離不開數(shù)據(jù)庫技術(shù)的支持,網(wǎng)絡(luò)數(shù)據(jù)庫則是把網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)庫技術(shù)相結(jié)合的一門學(xué)科,目前,網(wǎng)絡(luò)數(shù)據(jù)庫”則成為計(jì)算機(jī)等多個(gè)專業(yè)的必修課程。3.本課程總課時(shí)數(shù)為52課時(shí),中理論授課40學(xué)時(shí),實(shí)踐學(xué)時(shí)12學(xué)時(shí)。目前國內(nèi)外大學(xué)計(jì)算機(jī)專業(yè)數(shù)據(jù)庫課程的教學(xué)情況,把數(shù)據(jù)庫教學(xué)總結(jié)為3個(gè)層次:⒈數(shù)據(jù)庫應(yīng)用要求學(xué)生熟練掌握最流行的一種數(shù)據(jù)庫產(chǎn)品,如Oracle,SQLServer和MySQL等,并能進(jìn)行簡單的應(yīng)用設(shè)計(jì)。⒉數(shù)據(jù)庫理論的研究和數(shù)據(jù)庫新技術(shù)該層次的教學(xué)對(duì)象為計(jì)算機(jī)專業(yè)的研究生⒊DBMS原理和設(shè)計(jì)DBMS是數(shù)據(jù)庫的操作系統(tǒng),目前國內(nèi)只有少數(shù)幾個(gè)高校和公司具備DBMS的設(shè)計(jì)能力,如中國人民大學(xué)、東大阿爾派。二、學(xué)前準(zhǔn)備及學(xué)習(xí)方法1.《網(wǎng)絡(luò)數(shù)據(jù)庫》課程的先修課程為數(shù)據(jù)庫原理、操作系統(tǒng)、編譯原理、網(wǎng)絡(luò)程序設(shè)計(jì)等。2.需要首先了解數(shù)據(jù)庫是什么?能干什么?如何使用等基本問題,然后在“做中學(xué)”。即選擇一個(gè)數(shù)據(jù)庫管理系統(tǒng)產(chǎn)品,完成一個(gè)簡單的、接近于社會(huì)或生活實(shí)際問題的管理應(yīng)用系統(tǒng),在實(shí)踐過程中領(lǐng)會(huì)和加深對(duì)數(shù)據(jù)庫原理的理解,并用學(xué)到的數(shù)據(jù)庫原理,指導(dǎo)數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。三、課程重點(diǎn)、難點(diǎn)網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)的應(yīng)用是三分技術(shù),七分設(shè)計(jì),關(guān)鍵的工作是設(shè)計(jì)合理、好用、效率高的數(shù)據(jù)庫。數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計(jì)者必須靈活地運(yùn)用數(shù)據(jù)庫理論,根據(jù)實(shí)際情況決定創(chuàng)建什么樣的數(shù)據(jù)庫,庫中包括什么信息,信息之間如何聯(lián)系,以及數(shù)據(jù)庫模式應(yīng)該達(dá)到那個(gè)級(jí)別的范式等。網(wǎng)絡(luò)數(shù)據(jù)庫課程的目的是培養(yǎng)學(xué)生具有這樣的能力:在用戶和計(jì)算機(jī)之間架起橋梁,開發(fā)出滿足用戶使用的、操作簡便、功能齊全、運(yùn)行效率高的應(yīng)用系統(tǒng)。為達(dá)此目的,學(xué)生必須深刻領(lǐng)會(huì)數(shù)據(jù)庫原理的本質(zhì),還要善于從管理的對(duì)象中,抽取出有用信息,并建立數(shù)據(jù)模型。而此能力不是靠知識(shí)的記憶,應(yīng)該是知識(shí)的綜合利用。四、網(wǎng)絡(luò)數(shù)據(jù)庫有哪一些知識(shí)層面呢?⒈數(shù)據(jù)庫技術(shù):掌握一門數(shù)據(jù)庫,并且應(yīng)用熟練,本課程主要介紹MySQL

。⒉編程技術(shù):編程相對(duì)比較簡單,首先沒有邏輯錯(cuò)誤,還應(yīng)盡量提高程序的效率.本課程主要介紹JSP。⒊數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計(jì):數(shù)據(jù)庫設(shè)計(jì)不是創(chuàng)建幾個(gè)表那么簡單,連一個(gè)數(shù)據(jù)類型都會(huì)關(guān)系到系統(tǒng)的性能,比如用int型就比char型查找起來快。4.應(yīng)用系統(tǒng)的設(shè)計(jì)教材

教材周玲艷,張希:《網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用》,機(jī)械工業(yè)出版社,2008.8內(nèi)容安排

基礎(chǔ)篇第一章數(shù)據(jù)庫概述第二章MySQL基礎(chǔ)第三章MySQL的語法第四章使用JDBC連接數(shù)據(jù)庫第五章使用JSP編程訪問數(shù)據(jù)庫

設(shè)計(jì)與應(yīng)用開發(fā)篇第六章數(shù)據(jù)庫設(shè)計(jì)理論與實(shí)踐第七章綜合實(shí)訓(xùn)構(gòu)建小型電子商務(wù)系統(tǒng)五、參考書

參考書⑴數(shù)據(jù)庫系統(tǒng)概論(第四版)薩師煊,王珊編,高等教育出版社,2006第一章⑵《MySQLCookbook》PaulDuBois編,電子工業(yè)出版社,2008.3--第二、三章⑶《JSP實(shí)用簡明教程》程志艷編著,清華大學(xué)出版社,2007.8第四章、第五章⑷《數(shù)據(jù)庫設(shè)計(jì)與應(yīng)用》劉亞軍編,清華大學(xué)出版社,2007.6第六章⑸《JavaWeb數(shù)據(jù)庫系統(tǒng)應(yīng)用開發(fā)與實(shí)例》,沈應(yīng)逵主編,人民郵電出版社,2008.2第七章

上機(jī)軟件MySQL+JSP+Tomcat網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)應(yīng)用第一章緒論數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展什么是數(shù)據(jù)管理對(duì)數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲(chǔ)、檢索和維護(hù),是數(shù)據(jù)處理的中心問題數(shù)據(jù)管理技術(shù)的發(fā)展過程人工管理階段(40年代中--50年代中)文件系統(tǒng)階段(50年代末--60年代中)數(shù)據(jù)庫系統(tǒng)階段(60年代末--現(xiàn)在)數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展(續(xù))數(shù)據(jù)管理技術(shù)的發(fā)展動(dòng)力應(yīng)用需求的推動(dòng)計(jì)算機(jī)硬件的發(fā)展計(jì)算機(jī)軟件的發(fā)展一、人工管理時(shí)期20世紀(jì)40年代中--50年代中產(chǎn)生的背景應(yīng)用需求 科學(xué)計(jì)算 硬件水平 無直接存取存儲(chǔ)設(shè)備軟件水平 沒有操作系統(tǒng) 處理方式 批處理人工管理(續(xù))特點(diǎn)數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存數(shù)據(jù)面向的對(duì)象:某一應(yīng)用程序數(shù)據(jù)的共享程度:無共享、冗余度極大數(shù)據(jù)的獨(dú)立性:不獨(dú)立,完全依賴于程序數(shù)據(jù)的結(jié)構(gòu)化:無結(jié)構(gòu)數(shù)據(jù)控制能力:應(yīng)用程序自己控制應(yīng)用程序與數(shù)據(jù)的對(duì)應(yīng)關(guān)系(人工管理)

應(yīng)用程序1數(shù)據(jù)集1應(yīng)用程序2數(shù)據(jù)集2應(yīng)用程序n數(shù)據(jù)集n...…...…二、文件系統(tǒng)時(shí)期50年代末--60年代中產(chǎn)生的背景應(yīng)用需求 科學(xué)計(jì)算、管理 硬件水平 磁盤、磁鼓 軟件水平 有文件系統(tǒng) 處理方式 聯(lián)機(jī)實(shí)時(shí)處理、批處理

文件系統(tǒng)(續(xù))特點(diǎn)數(shù)據(jù)的管理者:文件系統(tǒng),數(shù)據(jù)可長期保存數(shù)據(jù)面向的對(duì)象:某一應(yīng)用程序數(shù)據(jù)的共享程度:共享性差、冗余度大數(shù)據(jù)的結(jié)構(gòu)化:記錄內(nèi)有結(jié)構(gòu),整體無結(jié)構(gòu)數(shù)據(jù)的獨(dú)立性:獨(dú)立性差,數(shù)據(jù)的邏輯結(jié)構(gòu)改變必須修改應(yīng)用程序數(shù)據(jù)控制能力:應(yīng)用程序自己控制應(yīng)用程序與數(shù)據(jù)的對(duì)應(yīng)關(guān)系(文件系統(tǒng))應(yīng)用程序1文件1應(yīng)用程序2文件2應(yīng)用程序n文件n存取方法...…...…文件系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)記錄內(nèi)有結(jié)構(gòu)。數(shù)據(jù)的結(jié)構(gòu)是靠程序定義和解釋的。數(shù)據(jù)只能是定長的??梢蚤g接實(shí)現(xiàn)數(shù)據(jù)變長要求,但訪問相應(yīng)數(shù)據(jù)的應(yīng)用程序復(fù)雜了。文件間是獨(dú)立的,因此數(shù)據(jù)整體無結(jié)構(gòu)??梢蚤g接實(shí)現(xiàn)數(shù)據(jù)整體的有結(jié)構(gòu),但必須在應(yīng)用程序中對(duì)描述數(shù)據(jù)間的聯(lián)系。數(shù)據(jù)的最小存取單位是記錄。三、數(shù)據(jù)庫系統(tǒng)時(shí)期60年代末以來產(chǎn)生的背景應(yīng)用背景 大規(guī)模管理 硬件背景 大容量磁盤 軟件背景 有數(shù)據(jù)庫管理系統(tǒng) 處理方式 聯(lián)機(jī)實(shí)時(shí)處理,分布處理,批處理

數(shù)據(jù)庫系統(tǒng)(續(xù))特點(diǎn)數(shù)據(jù)的管理者:DBMS數(shù)據(jù)面向的對(duì)象:現(xiàn)實(shí)世界 數(shù)據(jù)的共享程度:共享性高 數(shù)據(jù)的獨(dú)立性:高度的物理獨(dú)立性和一定的邏輯獨(dú)立性 數(shù)據(jù)的結(jié)構(gòu)化:整體結(jié)構(gòu)化數(shù)據(jù)控制能力:由DBMS統(tǒng)一管理和控制應(yīng)用程序與數(shù)據(jù)的對(duì)應(yīng)關(guān)系(數(shù)據(jù)庫系統(tǒng))DBMS應(yīng)用程序1應(yīng)用程序2數(shù)據(jù)庫…再如教學(xué)管理數(shù)據(jù)庫設(shè)備管理數(shù)據(jù)庫第一章數(shù)據(jù)庫概述1.1數(shù)據(jù)庫系統(tǒng)的基本概念1.2概念模型與數(shù)據(jù)模型1.3關(guān)系數(shù)據(jù)庫1.4與數(shù)據(jù)庫溝通SQL簡介1.5數(shù)據(jù)庫保護(hù)1.6網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用技術(shù)數(shù)據(jù)庫的地位數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的重要分支。數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用向各行各業(yè)的滲透。數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個(gè)國家信息化程度的重要標(biāo)志。1.1數(shù)據(jù)庫基本概念數(shù)據(jù)庫(Database)數(shù)據(jù)庫管理系統(tǒng)(DBMS)數(shù)據(jù)庫系統(tǒng)(DBS)數(shù)據(jù)數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲(chǔ)的基本對(duì)象數(shù)據(jù)的定義描述事物的符號(hào)記錄數(shù)據(jù)的種類文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運(yùn)輸情況等數(shù)據(jù)的特點(diǎn)數(shù)據(jù)與其語義是不可分的數(shù)據(jù)舉例數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。例如93是一個(gè)數(shù)據(jù)語義1:學(xué)生某門課的成績語義2:某人的體重語義3:計(jì)算機(jī)系2003級(jí)學(xué)生人數(shù)語義4:請(qǐng)同學(xué)給出。。。數(shù)據(jù)舉例學(xué)生檔案中的學(xué)生記錄(李明,男,197205,江蘇南京市,計(jì)算機(jī)系,1990)語義:學(xué)生姓名、性別、出生年月、籍貫、所在院系、入學(xué)時(shí)間解釋:李明是個(gè)大學(xué)生,1972年5月出生,江蘇南京市人,1990年考入計(jì)算機(jī)系請(qǐng)給出另一個(gè)解釋和語義1.1.1數(shù)據(jù)庫數(shù)據(jù)庫(續(xù))人們收集并抽取出一個(gè)應(yīng)用所需要的大量數(shù)據(jù)之后,應(yīng)將其保存起來以供進(jìn)一步加工處理,進(jìn)一步抽取有用信息數(shù)據(jù)庫的定義數(shù)據(jù)庫(Database,簡稱DB)是長期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合數(shù)據(jù)庫(續(xù))數(shù)據(jù)庫的特征最小冗余數(shù)據(jù)獨(dú)立性較高安全性完整性數(shù)據(jù)共享1.1.2數(shù)據(jù)庫管理系統(tǒng)什么是DBMS數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,簡稱DBMS)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。DBMS的用途科學(xué)地組織和存儲(chǔ)數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)數(shù)據(jù)庫在計(jì)算機(jī)系統(tǒng)中的位置硬件平臺(tái)基礎(chǔ)軟件平臺(tái)軟件基礎(chǔ)構(gòu)架平臺(tái)應(yīng)用軟件平臺(tái)軟件產(chǎn)品協(xié)同軟件辦公軟件數(shù)據(jù)庫系統(tǒng)操作系統(tǒng)中間件應(yīng)用服務(wù)器DBMS的主要功能數(shù)據(jù)定義功能提供數(shù)據(jù)定義語言(DDL)

定義數(shù)據(jù)庫中的數(shù)據(jù)對(duì)象數(shù)據(jù)組織、存儲(chǔ)和管理

分類組織、存儲(chǔ)和管理各種數(shù)據(jù)確定組織數(shù)據(jù)的文件結(jié)構(gòu)和存取方式實(shí)現(xiàn)數(shù)據(jù)之間的聯(lián)系提供多種存取方法提高存取效率DBMS的主要功能數(shù)據(jù)操縱功能

提供數(shù)據(jù)操縱語言(DML)

實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的基本操作(查詢、插入、刪除和修改)數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理

數(shù)據(jù)庫在建立、運(yùn)行和維護(hù)時(shí)由DBMS統(tǒng)一管理和控制保證數(shù)據(jù)的安全性、完整性、多用戶對(duì)數(shù)據(jù)的并發(fā)使用發(fā)生故障后的系統(tǒng)恢復(fù)DBMS的主要功能數(shù)據(jù)庫的建立和維護(hù)功能(實(shí)用程序)

數(shù)據(jù)庫初始數(shù)據(jù)裝載轉(zhuǎn)換數(shù)據(jù)庫轉(zhuǎn)儲(chǔ)介質(zhì)故障恢復(fù)數(shù)據(jù)庫的重組織性能監(jiān)視分析等其它功能

DBMS與網(wǎng)絡(luò)中其它軟件系統(tǒng)的通信兩個(gè)DBMS系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換異構(gòu)數(shù)據(jù)庫之間的互訪和互操作1.1.3、數(shù)據(jù)庫系統(tǒng)什么是數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,簡稱DBS)是指基于數(shù)據(jù)庫的計(jì)算機(jī)應(yīng)用系統(tǒng)。在不引起混淆的情況下常常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。數(shù)據(jù)庫系統(tǒng)的構(gòu)成由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員(和用戶)構(gòu)成。

數(shù)據(jù)庫應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具

操作系統(tǒng)

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

數(shù)據(jù)庫管理員用戶用戶用戶

數(shù)據(jù)庫系統(tǒng)硬件平臺(tái)及數(shù)據(jù)庫數(shù)據(jù)庫系統(tǒng)對(duì)硬件資源的要求

(1)足夠大的內(nèi)存操作系統(tǒng)DBMS的核心模塊數(shù)據(jù)緩沖區(qū)應(yīng)用程序硬件平臺(tái)及數(shù)據(jù)庫(續(xù))(2)足夠大的外存磁盤或磁盤陣列數(shù)據(jù)庫光盤、磁帶數(shù)據(jù)備份(3)較高的通道能力,提高數(shù)據(jù)傳送率軟件DBMS支持DBMS運(yùn)行的操作系統(tǒng)與數(shù)據(jù)庫接口的高級(jí)語言及其編譯系統(tǒng)以DBMS為核心的應(yīng)用開發(fā)工具為特定應(yīng)用環(huán)境開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng)人員數(shù)據(jù)庫管理員系統(tǒng)分析員和數(shù)據(jù)庫設(shè)計(jì)人員應(yīng)用程序員用戶人員(續(xù))不同的人員涉及不同的數(shù)據(jù)抽象級(jí)別,具有不同的數(shù)據(jù)視圖,如下圖所示圖1.30各種人員的數(shù)據(jù)視圖

數(shù)據(jù)庫管理員(DBA)具體職責(zé):

1.決定數(shù)據(jù)庫中的信息內(nèi)容和結(jié)構(gòu)2.決定數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)和存取策略3.定義數(shù)據(jù)的安全性要求和完整性約束條件數(shù)據(jù)庫管理員(續(xù))4.監(jiān)控?cái)?shù)據(jù)庫的使用和運(yùn)行周期性轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫數(shù)據(jù)文件日志文件系統(tǒng)故障恢復(fù)介質(zhì)故障恢復(fù)監(jiān)視審計(jì)文件數(shù)據(jù)庫管理員(續(xù))5.數(shù)據(jù)庫的改進(jìn)和重組性能監(jiān)控和調(diào)優(yōu)定期對(duì)數(shù)據(jù)庫進(jìn)行重組織,以提高系統(tǒng)的性能需求增加和改變時(shí),數(shù)據(jù)庫須需要重構(gòu)造系統(tǒng)分析員和數(shù)據(jù)庫設(shè)計(jì)人員系統(tǒng)分析員負(fù)責(zé)應(yīng)用系統(tǒng)的需求分析和規(guī)范說明與用戶及DBA協(xié)商,確定系統(tǒng)的硬軟件配置參與數(shù)據(jù)庫系統(tǒng)的概要設(shè)計(jì)系統(tǒng)分析員和數(shù)據(jù)庫設(shè)計(jì)人員(續(xù))數(shù)據(jù)庫設(shè)計(jì)人員參加用戶需求調(diào)查和系統(tǒng)分析確定數(shù)據(jù)庫中的數(shù)據(jù)設(shè)計(jì)數(shù)據(jù)庫各級(jí)模式應(yīng)用程序員設(shè)計(jì)和編寫應(yīng)用系統(tǒng)的程序模塊進(jìn)行調(diào)試和安裝用戶用戶是指最終用戶(EndUser)。最終用戶通過應(yīng)用系統(tǒng)的用戶接口使用數(shù)據(jù)庫。

1.偶然用戶不經(jīng)常訪問數(shù)據(jù)庫,但每次訪問數(shù)據(jù)庫時(shí)往往需要不同的數(shù)據(jù)庫信息企業(yè)或組織機(jī)構(gòu)的高中級(jí)管理人員用戶(續(xù))2.簡單用戶主要工作是查詢和更新數(shù)據(jù)庫銀行的職員、機(jī)票預(yù)定人員、旅館總臺(tái)服務(wù)員3.復(fù)雜用戶工程師、科學(xué)家、經(jīng)濟(jì)學(xué)家、科技工作者等直接使用數(shù)據(jù)庫語言訪問數(shù)據(jù)庫,甚至能夠基于數(shù)據(jù)庫管理系統(tǒng)的API編制自己的應(yīng)用程序數(shù)據(jù)庫系統(tǒng)的特點(diǎn)數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充數(shù)據(jù)獨(dú)立性高數(shù)據(jù)由DBMS統(tǒng)一管理和控制數(shù)據(jù)結(jié)構(gòu)化整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一整體結(jié)構(gòu)化不再僅僅針對(duì)某一個(gè)應(yīng)用,而是面向全組織不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系數(shù)據(jù)庫中實(shí)現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型描述,無需程序定義和解釋數(shù)據(jù)可以變長數(shù)據(jù)的最小存取單位是數(shù)據(jù)項(xiàng)數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個(gè)系統(tǒng),可以被多個(gè)用戶、多個(gè)應(yīng)用共享使用。數(shù)據(jù)共享的好處減少數(shù)據(jù)冗余,節(jié)約存儲(chǔ)空間避免數(shù)據(jù)之間的不相容性與不一致性使系統(tǒng)易于擴(kuò)充數(shù)據(jù)獨(dú)立性高物理獨(dú)立性指用戶的應(yīng)用程序與存儲(chǔ)在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨(dú)立的。當(dāng)數(shù)據(jù)的物理存儲(chǔ)改變了,應(yīng)用程序不用改變。邏輯獨(dú)立性指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。數(shù)據(jù)獨(dú)立性是由DBMS的二級(jí)映像功能來保證的DBMS對(duì)數(shù)據(jù)的控制功能數(shù)據(jù)的安全性(Security)保護(hù)使每個(gè)用戶只能按指定方式使用和處理指定數(shù)據(jù),保護(hù)數(shù)據(jù)以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。數(shù)據(jù)的完整性(Integrity)檢查將數(shù)據(jù)控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關(guān)系。DBMS對(duì)數(shù)據(jù)的控制功能并發(fā)(Concurrency)控制對(duì)多用戶的并發(fā)操作加以控制和協(xié)調(diào),防止相互干擾而得到錯(cuò)誤的結(jié)果。數(shù)據(jù)庫恢復(fù)(Recovery)將數(shù)據(jù)庫從錯(cuò)誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)。應(yīng)用程序與數(shù)據(jù)的對(duì)應(yīng)關(guān)系(數(shù)據(jù)庫系統(tǒng))DBMS應(yīng)用程序1應(yīng)用程序2數(shù)據(jù)庫…數(shù)據(jù)庫系統(tǒng)階段應(yīng)用程序與數(shù)據(jù)之間的對(duì)應(yīng)關(guān)系

1.2概念模型與數(shù)據(jù)模型數(shù)據(jù)模型在數(shù)據(jù)庫中用數(shù)據(jù)模型這個(gè)工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬數(shù)據(jù)模型應(yīng)滿足三方面要求能比較真實(shí)地模擬現(xiàn)實(shí)世界容易為人所理解便于在計(jì)算機(jī)上實(shí)現(xiàn)兩大類數(shù)據(jù)模型數(shù)據(jù)模型分為兩類(分屬兩個(gè)不同的層次)(1)概念模型也稱信息模型,它是按用戶的觀點(diǎn)來對(duì)數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設(shè)計(jì)。(2)邏輯模型和物理模型

邏輯模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型、面向?qū)ο竽P偷?,按?jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,用于DBMS實(shí)現(xiàn)。物理模型是對(duì)數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,在磁盤或磁帶上的存儲(chǔ)方式和存取方法。兩大類數(shù)據(jù)模型(續(xù))客觀對(duì)象的抽象過程兩步抽象現(xiàn)實(shí)世界中的客觀對(duì)象抽象為概念模型;把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。兩大類數(shù)據(jù)模型(續(xù))DBMS支持的數(shù)據(jù)模型概念模型認(rèn)識(shí)抽象信息世界機(jī)器世界現(xiàn)實(shí)世界中客觀對(duì)象的抽象過程現(xiàn)實(shí)世界現(xiàn)實(shí)世界概念模型數(shù)據(jù)庫設(shè)計(jì)人員完成邏輯模型物理模型由DBMS完成1.2.1概念模型概念模型的用途概念模型用于信息世界的建模是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次是數(shù)據(jù)庫設(shè)計(jì)的有力工具數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言對(duì)概念模型的基本要求較強(qiáng)的語義表達(dá)能力,能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識(shí)簡單、清晰、易于用戶理解。概念模型中的基本概念

(1)實(shí)體(Entity)客觀存在并可相互區(qū)別的事物稱為實(shí)體。可以是具體的人、事、物或抽象的概念。(2)屬性(Attribute)實(shí)體所具有的某一特性稱為屬性。一個(gè)實(shí)體可以由若干個(gè)屬性來刻畫。

(3)碼(Key)唯一標(biāo)識(shí)實(shí)體的屬性集稱為碼。

一、信息世界中的基本概念(續(xù))(4)域(Domain)屬性的取值范圍稱為該屬性的域。(5)實(shí)體型(EntityType)用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體稱為實(shí)體型(6)實(shí)體集(EntitySet)同型實(shí)體的集合稱為實(shí)體集信息世界中的基本概念(續(xù))(7)聯(lián)系(Relationship)現(xiàn)實(shí)世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系實(shí)體型間聯(lián)系兩個(gè)實(shí)體型一對(duì)一聯(lián)系(1:1)三個(gè)實(shí)體型一對(duì)多聯(lián)系(1:n)一個(gè)實(shí)體型多對(duì)多聯(lián)系(m:n)

兩個(gè)實(shí)體型間的聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型2111:1聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型2mnm:n聯(lián)系實(shí)體型1聯(lián)系名實(shí)體型21n1:n聯(lián)系兩個(gè)實(shí)體型間的聯(lián)系一對(duì)一聯(lián)系(1:1)

實(shí)例一個(gè)班級(jí)只有一個(gè)正班長一個(gè)班長只在一個(gè)班中任職定義:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中至多有一個(gè)(也可以沒有)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集A與實(shí)體集B具有一對(duì)一聯(lián)系,記為1:1班級(jí)班級(jí)-班長班長111:1聯(lián)系兩個(gè)實(shí)體型間的聯(lián)系(續(xù))一對(duì)多聯(lián)系(1:n)實(shí)例一個(gè)班級(jí)中有若干名學(xué)生,每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí)定義:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B有一對(duì)多聯(lián)系,記為1:n班級(jí)組成學(xué)生1n1:n聯(lián)系兩個(gè)實(shí)體型間的聯(lián)系(續(xù))多對(duì)多聯(lián)系(m:n)實(shí)例課程與學(xué)生之間的聯(lián)系:一門課程同時(shí)有若干個(gè)學(xué)生選修一個(gè)學(xué)生可以同時(shí)選修多門課程定義:如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中也有m個(gè)實(shí)體(m≥0)與之聯(lián)系,則稱實(shí)體集A與實(shí)體B具有多對(duì)多聯(lián)系,記為m:n課程選修學(xué)生mnm:n聯(lián)系多個(gè)實(shí)體型間的聯(lián)系(續(xù))多個(gè)實(shí)體型間的一對(duì)多聯(lián)系若實(shí)體集E1,E2,...,En存在聯(lián)系,對(duì)于實(shí)體集Ej(j=1,2,...,i-1,i+1,...,n)中的給定實(shí)體,最多只和Ei中的一個(gè)實(shí)體相聯(lián)系,則我們說Ei與E1,E2,...,Ei-1,Ei+1,...,En之間的聯(lián)系是一對(duì)多的。多個(gè)實(shí)體型間的聯(lián)系(續(xù))實(shí)例

課程、教師與參考書三個(gè)實(shí)體型一門課程可以有若干個(gè)教師講授,使用若干本參考書,每一個(gè)教師只講授一門課程,每一本參考書只供一門課程使用課程講授教師1m兩個(gè)以上實(shí)體型間1:n聯(lián)系參考書n多個(gè)實(shí)體型間的聯(lián)系(續(xù))多個(gè)實(shí)體型間的一對(duì)一聯(lián)系兩個(gè)以上實(shí)體型間的多對(duì)多聯(lián)系實(shí)例

供應(yīng)商、項(xiàng)目、零件三個(gè)實(shí)體型一個(gè)供應(yīng)商可以供給多個(gè)項(xiàng)目多種零件,每個(gè)項(xiàng)目可以使用多個(gè)供應(yīng)商供應(yīng)的零件,每種零件可由不同供應(yīng)商供給。供應(yīng)商供應(yīng)項(xiàng)目mp兩個(gè)以上實(shí)體型間m:n聯(lián)系零件n單個(gè)實(shí)體型內(nèi)的聯(lián)系一對(duì)多聯(lián)系實(shí)例

職工實(shí)體型內(nèi)部具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)系某一職工(干部)“領(lǐng)導(dǎo)”若干名職工一個(gè)職工僅被另外一個(gè)職工直接領(lǐng)導(dǎo)這是一對(duì)多的聯(lián)系一對(duì)一聯(lián)系

請(qǐng)舉例職工領(lǐng)導(dǎo)1n單個(gè)實(shí)體型內(nèi)部1:n聯(lián)系單個(gè)實(shí)體型內(nèi)的聯(lián)系多對(duì)多聯(lián)系請(qǐng)舉例實(shí)體型1聯(lián)系名mn單個(gè)實(shí)體型內(nèi)的m:n聯(lián)系概念模型的一種表示方法實(shí)體-聯(lián)系方法(E-R方法)用E-R圖來描述現(xiàn)實(shí)世界的概念模型E-R方法也稱為E-R模型陳品山1968年,陳品山于國立臺(tái)灣大學(xué)畢業(yè),之后赴美國深造。1970年獲哈佛大學(xué)計(jì)算機(jī)科學(xué)和應(yīng)用數(shù)學(xué)碩士學(xué)位,1973年獲哈佛大學(xué)計(jì)算機(jī)科學(xué)和應(yīng)用數(shù)學(xué)博士學(xué)位。之后,他曾先后在麻省理工學(xué)院(1974-1978,1986-1987),加州大學(xué)洛杉磯分校(1978-1984),哈佛大學(xué)(1990-1991)等學(xué)府從事教學(xué)和研究,從1983年至今任路易斯安納州立大學(xué)計(jì)算機(jī)科學(xué)系MurphyJ.Foster杰出講座教授

陳品山博士于1976年3月ACMTransactionsonDatabaseSystems上發(fā)表了《TheEntity-RelationshipModel--TowardaUnifiedViewofData》一文。由于大眾廣泛使用實(shí)體聯(lián)系模型,而這篇文章已成為計(jì)算機(jī)科學(xué)38篇被廣泛引用的論文中之一。且被譽(yù)為全世界最具計(jì)算機(jī)軟件開發(fā)技術(shù)的16位科學(xué)家之一。E-R圖實(shí)體型用矩形表示,矩形框內(nèi)寫明實(shí)體名。學(xué)生教師E-R圖(續(xù))屬性用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來學(xué)生學(xué)號(hào)年齡性別姓名E-R圖(續(xù))聯(lián)系聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1、1:n或m:n)聯(lián)系的表示方法實(shí)體型A聯(lián)系名實(shí)體型B111:1聯(lián)系實(shí)體型A聯(lián)系名1n1:n聯(lián)系實(shí)體型A實(shí)體型B聯(lián)系名mnm:n聯(lián)系實(shí)體型B聯(lián)系的表示方法班級(jí)班級(jí)-班長班長111:1聯(lián)系課程選修學(xué)生mnm:n聯(lián)系班級(jí)組成學(xué)生1n1:n聯(lián)系聯(lián)系的表示方法示例班級(jí)班級(jí)-班長班長111:1聯(lián)系課程選修學(xué)生mnm:n聯(lián)系班級(jí)組成學(xué)生1n1:n聯(lián)系聯(lián)系屬性的表示方法課程選修學(xué)生mn成績聯(lián)系的屬性:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來一個(gè)實(shí)例用E-R圖表示某個(gè)工廠物資管理的概念模型實(shí)體倉庫:倉庫號(hào)、面積、電話號(hào)碼零件:零件號(hào)、名稱、規(guī)格、單價(jià)、描述供應(yīng)商:供應(yīng)商號(hào)、姓名、地址、電話號(hào)碼、帳號(hào)項(xiàng)目:項(xiàng)目號(hào)、預(yù)算、開工日期職工:職工號(hào)、姓名、年齡、職稱

一個(gè)實(shí)例實(shí)體之間的聯(lián)系如下:

(1)一個(gè)倉庫可以存放多種零件,一種零件可以存放在多個(gè)倉庫中。倉庫和零件具有多對(duì)多的聯(lián)系。用庫存量來表示某種零件在某個(gè)倉庫中的數(shù)量。(2)一個(gè)倉庫有多個(gè)職工當(dāng)倉庫保管員,一個(gè)職工只能在一個(gè)倉庫工作,倉庫和職工之間是一對(duì)多的聯(lián)系。職工實(shí)體型中具有一對(duì)多的聯(lián)系

(3)職工之間具有領(lǐng)導(dǎo)-被領(lǐng)導(dǎo)關(guān)系。即倉庫主任領(lǐng)導(dǎo)若干保管員。(4)供應(yīng)商、項(xiàng)目和零件三者之間具有多對(duì)多的聯(lián)系實(shí)體屬性圖實(shí)體聯(lián)系圖一個(gè)實(shí)例

1.2.2數(shù)據(jù)模型數(shù)據(jù)模型的組成要素?cái)?shù)據(jù)結(jié)構(gòu)數(shù)據(jù)操作數(shù)據(jù)的約束條件數(shù)據(jù)結(jié)構(gòu)什么是數(shù)據(jù)結(jié)構(gòu)對(duì)象類型的集合兩類對(duì)象與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對(duì)象與數(shù)據(jù)之間聯(lián)系有關(guān)的對(duì)象數(shù)據(jù)結(jié)構(gòu)是對(duì)系統(tǒng)靜態(tài)特性的描述數(shù)據(jù)操作數(shù)據(jù)操作對(duì)數(shù)據(jù)庫中各種對(duì)象(型)的實(shí)例(值)允許執(zhí)行的操作及有關(guān)的操作規(guī)則數(shù)據(jù)操作的類型檢索更新(包括插入、刪除、修改)數(shù)據(jù)操作(續(xù))數(shù)據(jù)模型對(duì)操作的定義操作的確切含義操作符號(hào)操作規(guī)則(如優(yōu)先級(jí))實(shí)現(xiàn)操作的語言數(shù)據(jù)操作是對(duì)系統(tǒng)動(dòng)態(tài)特性的描述。數(shù)據(jù)的約束條件數(shù)據(jù)的約束條件一組完整性規(guī)則的集合。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和儲(chǔ)存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。最常用的數(shù)據(jù)模型非關(guān)系模型層次模型(HierarchicalModel)網(wǎng)狀模型(NetworkModel)關(guān)系模型(RelationalModel)面向?qū)ο竽P?ObjectOrientedModel)對(duì)象關(guān)系模型(ObjectRelationalModel)層次模型層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型

層次數(shù)據(jù)庫系統(tǒng)的典型代表是IBM公司的IMS(InformationManagementSystem)數(shù)據(jù)庫管理系統(tǒng)層次模型用樹形結(jié)構(gòu)來表示各類實(shí)體以及實(shí)體間的聯(lián)系

層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)層次模型

滿足下面兩個(gè)條件的基本層次聯(lián)系的集合為層次模型。1.有且只有一個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn)2.根以外的其它結(jié)點(diǎn)有且只有一個(gè)雙親結(jié)點(diǎn)層次模型中的幾個(gè)術(shù)語根結(jié)點(diǎn),雙親結(jié)點(diǎn),兄弟結(jié)點(diǎn),葉結(jié)點(diǎn)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))

R1

根結(jié)點(diǎn)

R2

兄弟結(jié)點(diǎn)

R3

葉結(jié)點(diǎn)

R4

兄弟結(jié)點(diǎn)

R5

葉結(jié)點(diǎn)

葉結(jié)點(diǎn)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))層次模型的特點(diǎn):結(jié)點(diǎn)的雙親是唯一的只能直接處理一對(duì)多的實(shí)體聯(lián)系每個(gè)記錄類型可以定義一個(gè)排序字段,也稱為碼字段任何記錄值只有按其路徑查看時(shí),才能顯出它的全部意義沒有一個(gè)子女記錄值能夠脫離雙親記錄值而獨(dú)立存在層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))

根結(jié)點(diǎn)葉結(jié)點(diǎn)記錄型系的子女結(jié)點(diǎn)記錄型教員的雙親結(jié)點(diǎn)字段葉結(jié)點(diǎn)層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))層次模型的數(shù)據(jù)操縱與完整性約束查詢插入刪除更新層次模型的數(shù)據(jù)操縱與完整性約束(續(xù))無相應(yīng)的雙親結(jié)點(diǎn)值就不能插入子女結(jié)點(diǎn)值如果刪除雙親結(jié)點(diǎn)值,則相應(yīng)的子女結(jié)點(diǎn)值也被同時(shí)刪除更新操作時(shí),應(yīng)更新所有相應(yīng)記錄,以保證數(shù)據(jù)的一致性層次模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)層次數(shù)據(jù)模型簡單,對(duì)具有一對(duì)多的層次關(guān)系的部門描述自然、直觀,容易理解性能優(yōu)于關(guān)系模型,不低于網(wǎng)狀模型層次數(shù)據(jù)模型提供了良好的完整性支持缺點(diǎn)多對(duì)多聯(lián)系表示不自然對(duì)插入和刪除操作的限制多查詢子女結(jié)點(diǎn)必須通過雙親結(jié)點(diǎn)層次命令趨于程序化網(wǎng)狀模型網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀模型作為數(shù)據(jù)的組織方式實(shí)際系統(tǒng)CullinetSoftwareInc.公司的IDMSUnivac公司的DMS1100Honeywell公司的IDS/2HP公司的IMAGE網(wǎng)狀數(shù)據(jù)庫網(wǎng)狀數(shù)據(jù)庫系統(tǒng)采用網(wǎng)狀模型作為數(shù)據(jù)的組織方式網(wǎng)狀模型滿足下面兩個(gè)條件的基本層次聯(lián)系的集合:1.允許一個(gè)以上的結(jié)點(diǎn)無雙親;2.一個(gè)結(jié)點(diǎn)可以有多于一個(gè)的雙親網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))表示方法(與層次數(shù)據(jù)模型相同)實(shí)體型:用記錄類型描述每個(gè)結(jié)點(diǎn)表示一個(gè)記錄類型(實(shí)體)屬性:用字段描述每個(gè)記錄類型可包含若干個(gè)字段聯(lián)系:用結(jié)點(diǎn)之間的連線表示記錄類型(實(shí)體)之間的一對(duì)多的父子聯(lián)系網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀模型與層次模型的區(qū)別網(wǎng)狀模型允許多個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn)網(wǎng)狀模型允許結(jié)點(diǎn)有多個(gè)雙親結(jié)點(diǎn)網(wǎng)狀模型允許兩個(gè)結(jié)點(diǎn)之間有多種聯(lián)系(復(fù)合聯(lián)系)網(wǎng)狀模型可以更直接地去描述現(xiàn)實(shí)世界層次模型實(shí)際上是網(wǎng)狀模型的一個(gè)特例網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀模型中子女結(jié)點(diǎn)與雙親結(jié)點(diǎn)的聯(lián)系可以不唯一要為每個(gè)聯(lián)系命名,并指出與該聯(lián)系有關(guān)的雙親記錄和子女記錄R1與R3之間的聯(lián)系L1R2與R3之間的聯(lián)系L2

網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例如:一個(gè)學(xué)生可以選修若干門課程,某一課程可以被多個(gè)學(xué)生選修,學(xué)生與課程之間是多對(duì)多聯(lián)系引進(jìn)一個(gè)學(xué)生選課的聯(lián)結(jié)記錄,由3個(gè)數(shù)據(jù)項(xiàng)組成學(xué)號(hào)課程號(hào)成績表示某個(gè)學(xué)生選修某一門課程及其成績網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)能夠更為直接地描述現(xiàn)實(shí)世界,如一個(gè)結(jié)點(diǎn)可以有多個(gè)雙親具有良好的性能,存取效率較高缺點(diǎn)結(jié)構(gòu)比較復(fù)雜,而且隨著應(yīng)用環(huán)境的擴(kuò)大,數(shù)據(jù)庫的結(jié)構(gòu)就變得越來越復(fù)雜,不利于最終用戶掌握DDL、DML語言復(fù)雜,用戶不容易使用關(guān)系模型關(guān)系數(shù)據(jù)庫系統(tǒng)采用關(guān)系模型作為數(shù)據(jù)的組織方式

1970年美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關(guān)系模型計(jì)算機(jī)廠商新推出的數(shù)據(jù)庫管理系統(tǒng)幾乎都支持關(guān)系模型

埃德加·考特1981年的圖靈獎(jiǎng)關(guān)系數(shù)據(jù)庫之父參加了IBM第一臺(tái)科學(xué)計(jì)算機(jī)701以及第一臺(tái)大型晶體管計(jì)算機(jī)STRETCH的邏輯設(shè)計(jì),主持了第一個(gè)有多道程序設(shè)計(jì)能力的操作系統(tǒng)的開發(fā)考特原是英國人,1923年8月19日生于英格蘭中部的港口城市波特蘭。第二次世界大戰(zhàn)爆發(fā)以后,年輕的考特應(yīng)征入伍在皇家空軍服役,1942至1945年期間任機(jī)長,參與了許多重大空戰(zhàn),為反法西斯戰(zhàn)爭(zhēng)立下了汗馬功勞。二戰(zhàn)結(jié)束以后,考特上牛津大學(xué)學(xué)習(xí)數(shù)學(xué),于1948年取得學(xué)士學(xué)位以后到美國謀求發(fā)展。他先后在美國和加拿大工作,參加了IBM第一臺(tái)科學(xué)計(jì)算機(jī)701以及第一臺(tái)大型晶體管計(jì)算機(jī)STRETCH的邏輯設(shè)計(jì),主持了第一個(gè)有多道程序設(shè)計(jì)能力的操作系統(tǒng)的開發(fā)。他自覺硬件知識(shí)缺乏,于是在60年代初,到密歇根大學(xué)進(jìn)修計(jì)算機(jī)與通信專業(yè)(當(dāng)時(shí)他已年近40),并于1963年獲得碩士學(xué)位,1965年取得博士學(xué)位。這使他的理論基礎(chǔ)更加扎實(shí),專業(yè)知識(shí)更加豐富。加上他在此之前十幾年實(shí)踐經(jīng)驗(yàn)的積累,終于在1970年迸發(fā)出智慧的閃光,為數(shù)據(jù)庫技術(shù)開辟了一個(gè)新時(shí)代。關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)在用戶觀點(diǎn)下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成。學(xué)號(hào)姓名年齡性別系名年級(jí)2005004王小明19女社會(huì)學(xué)20052005006黃大鵬20男商品學(xué)20052005008張文斌18女法律2005………………學(xué)生登記表屬性元組關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系(Relation)一個(gè)關(guān)系對(duì)應(yīng)通常說的一張表元組(Tuple)表中的一行即為一個(gè)元組屬性(Attribute)

表中的一列即為一個(gè)屬性,給每一個(gè)屬性起一個(gè)名稱即屬性名關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))主碼(Key)表中的某個(gè)屬性組,它可以唯一確定一個(gè)元組。域(Domain)屬性的取值范圍。分量元組中的一個(gè)屬性值。關(guān)系模式對(duì)關(guān)系的描述關(guān)系名(屬性1,屬性2,…,屬性n)學(xué)生(學(xué)號(hào),姓名,年齡,性別,系,年級(jí))關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例1學(xué)生、系、系與學(xué)生之間的一對(duì)多聯(lián)系:學(xué)生(學(xué)號(hào),姓名,年齡,性別,系號(hào),年級(jí))系(系號(hào),系名,辦公地點(diǎn))例2系、系主任、系與系主任間的一對(duì)一聯(lián)系關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))例3學(xué)生、課程、學(xué)生與課程之間的多對(duì)多聯(lián)系:

學(xué)生(學(xué)號(hào),姓名,年齡,性別,系號(hào),年級(jí))課程(課程號(hào),課程名,學(xué)分)選修(學(xué)號(hào),課程號(hào),成績)關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系必須是規(guī)范化的,滿足一定的規(guī)范條件最基本的規(guī)范條件:關(guān)系的每一個(gè)分量必須是一個(gè)不可分的數(shù)據(jù)項(xiàng),不允許表中還有表圖中工資和扣除是可分的數(shù)據(jù)項(xiàng),不符合關(guān)系模型要求

職工號(hào)姓名職稱工資扣除實(shí)

發(fā)基本津貼職務(wù)房租水電86051陳平講師13051200501601122283一個(gè)工資表(表中有表)實(shí)例關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù))關(guān)系術(shù)語一般表格的術(shù)語關(guān)系名表名關(guān)系模式表頭(表格的描述)關(guān)系(一張)二維表元組記錄或行屬性列屬性名列名屬性值列值分量一條記錄中的一個(gè)列值非規(guī)范關(guān)系表中有表(大表中嵌有小表)術(shù)語對(duì)比關(guān)系數(shù)據(jù)模型的操縱與完整性約束數(shù)據(jù)操作是集合操作,操作對(duì)象和操作結(jié)果都是關(guān)系查詢插入刪除更新數(shù)據(jù)操作是集合操作,操作對(duì)象和操作結(jié)果都是關(guān)系,即若干元組的集合存取路徑對(duì)用戶隱蔽,用戶只要指出“干什么”,不必詳細(xì)說明“怎么干”關(guān)系數(shù)據(jù)模型的操縱與完整性約束(續(xù))關(guān)系的完整性約束條件實(shí)體完整性參照完整性用戶定義的完整性關(guān)系數(shù)據(jù)模型的存儲(chǔ)結(jié)構(gòu)實(shí)體及實(shí)體間的聯(lián)系都用表來表示表以文件形式存儲(chǔ)有的DBMS一個(gè)表對(duì)應(yīng)一個(gè)操作系統(tǒng)文件有的DBMS自己設(shè)計(jì)文件結(jié)構(gòu)關(guān)系數(shù)據(jù)模型的優(yōu)缺點(diǎn)優(yōu)點(diǎn)建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)上概念單一實(shí)體和各類聯(lián)系都用關(guān)系來表示對(duì)數(shù)據(jù)的檢索結(jié)果也是關(guān)系關(guān)系模型的存取路徑對(duì)用戶透明具有更高的數(shù)據(jù)獨(dú)立性,更好的安全保密性簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作關(guān)系數(shù)據(jù)模型的優(yōu)缺點(diǎn)(續(xù))缺點(diǎn)存取路徑對(duì)用戶透明導(dǎo)致查詢效率往往不如非關(guān)系數(shù)據(jù)模型為提高性能,必須對(duì)用戶的查詢請(qǐng)求進(jìn)行優(yōu)化增加了開發(fā)DBMS的難度1.4SQL概述

SQL語言是:1974年由Boyce和Chamberlin提出的。1975年至1979年IBM公司sanJoseResearchLaboratory研制的關(guān)系數(shù)據(jù)庫管理系統(tǒng)原形系統(tǒng)SystemR實(shí)現(xiàn)了這種語言。1.4.1SQL概述第一個(gè)SQL標(biāo)準(zhǔn)是1986年10月由美國國家標(biāo)準(zhǔn)局(AmericanNationalStandardinstitute,簡稱ANSI)公布的,所以也稱該標(biāo)準(zhǔn)為SQL86。1989年國際標(biāo)準(zhǔn)化組織(InternationalOrganizationforStandardization,簡稱ISO)標(biāo)準(zhǔn)(SQL-89)1992年又公布了SQL-92標(biāo)準(zhǔn)。目前新的SQL標(biāo)準(zhǔn):SQL31.4.1SQL語言概述結(jié)構(gòu)化查詢語言(structuredquerylanguage,簡稱SQL)是一種介于關(guān)系代數(shù)與關(guān)系演算之間的語言,其功能包括查詢、操縱、定義和控制4個(gè)方面,是一個(gè)通用、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫語言。目前已成為關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言大多數(shù)數(shù)據(jù)庫均用SQL作為共同的數(shù)據(jù)存取語言和標(biāo)準(zhǔn)接口,使不同數(shù)據(jù)庫系統(tǒng)之間的互操作有了共同的基礎(chǔ)。1.4.2SQL的特點(diǎn)1.綜合統(tǒng)一數(shù)據(jù)庫的主要功能是通過數(shù)據(jù)庫支持的數(shù)據(jù)語言來實(shí)現(xiàn)的。1.4.2SQL的特點(diǎn)

2.高度非過程化

只提“做什么”,不必指明“怎么做”——用戶無需了解存取路徑及物理地址——減輕用戶負(fù)擔(dān),提高效率。

3.面向集合的操作方式

不僅查找結(jié)果可以是集合,插入,刪除,更新也可以是元組,比非關(guān)系DBMS優(yōu)越。1.4.2SQL的特點(diǎn)4.以同一種語法結(jié)構(gòu)提供兩種使用方式5.語言簡潔,易學(xué)易用SQL功能動(dòng)詞數(shù)據(jù)查詢SELECT數(shù)據(jù)定義CREATE,DROP,ALTER數(shù)據(jù)操縱INSERT,UPDATE,DELETE數(shù)據(jù)控制GRANT,REVOTE例:建立一個(gè)“學(xué)生”表student,它由學(xué)號(hào)Sno、姓名Sname、性別Ssex、年齡Sage、所在系Sdept五個(gè)屬性組成。其中學(xué)號(hào)不能為空,并且其值也唯一。CREATETABLEStudent(SnoCHAR(5)NOTNULLUNIQUE

溫馨提示

  • 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)論