數(shù)據(jù)庫原理與程序設(shè)計(jì)1.ppt_第1頁
數(shù)據(jù)庫原理與程序設(shè)計(jì)1.ppt_第2頁
數(shù)據(jù)庫原理與程序設(shè)計(jì)1.ppt_第3頁
數(shù)據(jù)庫原理與程序設(shè)計(jì)1.ppt_第4頁
數(shù)據(jù)庫原理與程序設(shè)計(jì)1.ppt_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)據(jù)庫原理與程序設(shè)計(jì),主講: 李 浩,華中農(nóng)業(yè)大學(xué)資環(huán)學(xué)院信息系,教學(xué)環(huán)節(jié)和成績(jī)?cè)u(píng)定,課堂講授 教學(xué)環(huán)節(jié) 課外閱讀 上機(jī)實(shí)踐 上機(jī)考查 20% 成績(jī)?cè)u(píng)定 期中考查 10% 期末考試 60% 作業(yè)及出勤 10% 聯(lián)系方式 E-Mail : Tel : 87280664,主要參考書目,數(shù)據(jù)庫系統(tǒng)概念 Abraham Silberschatz, Henry F.Korth, S.Sudarshan, 楊冬青,唐世渭等譯,機(jī)械工業(yè)出版社,2000 對(duì)象-關(guān)系數(shù)據(jù)庫管理系統(tǒng)下一個(gè)大浪潮 Michael Stonebraker, Dorothy Moore 楊冬青,唐世渭,裴芳等譯,北京大學(xué)出版社,1997 數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn) Hector Garcia-Molina, Jeffery D.Ullman,Jennifer Widom, 楊冬青,唐世渭,徐其鈞等譯,機(jī)械工業(yè)出版社,2001 數(shù)據(jù)庫系統(tǒng)概論(第三版) 薩師煊,王珊,高等教育出版社,2001,學(xué)習(xí)方法四項(xiàng)修煉,第一項(xiàng)修煉:自我超越( Personal Mastery ) “自我超越”的修煉是學(xué)習(xí)不斷理清并加深個(gè)人的真正愿望,集中精力,培養(yǎng)耐心,并客觀地觀察現(xiàn)實(shí)的過程。它是學(xué)習(xí)型組織的精神基礎(chǔ)。精通“自我超越”的人,能夠不斷實(shí)現(xiàn)他們內(nèi)心深處最想實(shí)現(xiàn)的愿望,他們對(duì)生命的態(tài)度就如同藝術(shù)家對(duì)于藝術(shù)一樣,全心投入、鍥而不舍,并不斷追求超越自我。有了這種精神動(dòng)力,個(gè)人的學(xué)習(xí)就不是一個(gè)一蹴而就的項(xiàng)目,而是一個(gè)永無盡頭的持續(xù)不斷的過程。而組織學(xué)習(xí)根植于個(gè)人對(duì)于學(xué)習(xí)的意愿與能力,也會(huì)不斷學(xué)習(xí)。,學(xué)習(xí)方法四項(xiàng)修煉,第二項(xiàng)修煉:改善心智模式 ( Improving Mental Models ) “改善心智模式”的修煉是把鏡子轉(zhuǎn)向自己,發(fā)掘自己內(nèi)心世界深處的秘密,并客觀地審視,借以改善自身的心智模式,更利于自己深入地學(xué)習(xí),學(xué)習(xí)方法四項(xiàng)修煉,第三項(xiàng)修煉:團(tuán)隊(duì)學(xué)習(xí)( Team Learning ) 團(tuán)隊(duì)中的成員互相學(xué)習(xí),取長(zhǎng)補(bǔ)短,不僅使團(tuán)隊(duì)整體的績(jī)效大幅提升,而且使團(tuán)隊(duì)中的成員成長(zhǎng)得更快 團(tuán)隊(duì)學(xué)習(xí)的修煉從“對(duì)話”( dialogue ) 開始。所謂“對(duì)話”,指的是團(tuán)隊(duì)中的所有成員敞開心扉,進(jìn)行心靈的溝通,從而進(jìn)入真正統(tǒng)一思考的方法或過程。另外,“對(duì)話”也可以找出有助于學(xué)習(xí)的互動(dòng)模式 在現(xiàn)代組織中,學(xué)習(xí)的基本單位是團(tuán)隊(duì)而非個(gè)人。除非團(tuán)隊(duì)能學(xué)習(xí),否則組織就無法學(xué)習(xí) 海森堡“科學(xué)根源于交談,在不同的人的合作之下,可能孕育出極為重要的科學(xué)成果?!?學(xué)習(xí)方法四項(xiàng)修煉,第四項(xiàng)修煉:系統(tǒng)思考( System Thinking ) 企業(yè)與人類社會(huì)都是一種“系統(tǒng)”,是由一系列微妙的、彼此息息相關(guān)的因素所構(gòu)成的有機(jī)整體。這些因素通過各不相同的模式或渠道相互影響,“牽一發(fā)而動(dòng)全身”。但是,這種影響并不是立桿見影、一一對(duì)應(yīng)的,而常常是要經(jīng)年累月才完全展現(xiàn)出來。身處系統(tǒng)中的一小部分,人們往往不由自主地傾向于關(guān)注系統(tǒng)中的某一片段(或局部),而無法真正把握整體。系統(tǒng)思考的修煉就在于擴(kuò)大人們的視野,讓人們“見樹又見林”,課程目標(biāo),了解,并結(jié)合關(guān)系型數(shù)據(jù)庫系統(tǒng)深入理解數(shù)據(jù)庫系統(tǒng)的基本概念,原理和方法。 掌握關(guān)系數(shù)據(jù)模型及關(guān)系數(shù)據(jù)語言,能熟練應(yīng)用SQL語言表達(dá)各種數(shù)據(jù)操作。 掌握E-R模型的概念和方法,關(guān)系數(shù)據(jù)庫規(guī)范化理論和數(shù)據(jù)庫設(shè)計(jì)方法,通過上機(jī)實(shí)習(xí)的訓(xùn)練,初步具備進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的能力。 對(duì)數(shù)據(jù)庫領(lǐng)域研究的深入課題有大致了解,激發(fā)在此領(lǐng)域中繼續(xù)學(xué)習(xí)和研究的愿望,為學(xué)習(xí)數(shù)據(jù)庫系統(tǒng)高級(jí)課程做準(zhǔn)備。,第1章 數(shù)據(jù)庫概論,在本章中,首先介紹數(shù)據(jù)庫中有關(guān)的主要概念,然后回顧數(shù)據(jù)管理技術(shù)的三個(gè)發(fā)展階段 要求了解數(shù)據(jù)庫的三個(gè)發(fā)展階段及各階段的主要特點(diǎn),掌握數(shù)據(jù)庫中的有關(guān)的基本概念、數(shù)據(jù)庫系統(tǒng)的組成及各部分的主要功能 重點(diǎn)掌握實(shí)體、屬性定義和實(shí)體型之間的聯(lián)系類型及特點(diǎn),信息產(chǎn)業(yè)朝陽產(chǎn)業(yè),三低一高 低失業(yè)、低通脹、低赤字、高增長(zhǎng) 技術(shù)密集型 高技術(shù)產(chǎn)業(yè)+高素質(zhì)人才,數(shù)據(jù)庫在信息系統(tǒng)中的地位,數(shù)據(jù)庫在信息系統(tǒng)中的地位,四大支柱 操作系統(tǒng)、網(wǎng)絡(luò)、計(jì)算機(jī)語言、數(shù)據(jù)庫 兩大熱門 網(wǎng)絡(luò)、數(shù)據(jù)庫。 無所不在的數(shù)據(jù)管理 Everything Over DB 如電子商務(wù)、數(shù)字圖書館、交互視頻等等,1.1.1 信息(Information),信息的定義 信息是關(guān)于現(xiàn)實(shí)世界事物的存在方式或運(yùn)動(dòng)狀態(tài)的反映的綜合,具體說是一種被加工為特定形式的數(shù)據(jù),但這種數(shù)據(jù)形式對(duì)接收者來說是有意義的,而且對(duì)當(dāng)前和將來的決策具有明顯的或?qū)嶋H的價(jià)值。 如“2005年碩士研究生將繼續(xù)擴(kuò)招20%”,對(duì)接受者有意義,使接受者據(jù)此作出決策。,1.1.1 信息(Information),2. 信息的特征 信息源于物質(zhì)和能量,它不可能脫離物質(zhì)而存在,信息的傳遞需要物質(zhì)載體,信息的獲取和傳遞要消耗能量。 如信息可以通過報(bào)紙、電臺(tái)、電視、計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行傳遞 信息是可以感知的,人類對(duì)客觀事物的感知,可以通過感覺器官,也可以通過各種儀器儀表和傳感器等,不同的信息源有不同的感知形式。 如報(bào)紙上刊登的信息通過視覺器官感知,電臺(tái)中廣播的信息通過聽覺器官感知 信息是可存儲(chǔ)、加工、傳遞和再生的。動(dòng)物用大腦存儲(chǔ)信息,叫做記憶。計(jì)算機(jī)存儲(chǔ)器、錄音、錄像等技術(shù)的發(fā)展,進(jìn)一步擴(kuò)大了信息存儲(chǔ)的范圍。借助計(jì)算機(jī),還可對(duì)收集到的信息進(jìn)行取舍整理。,信息與知識(shí),知識(shí) “行動(dòng)的能力” “可以輔助我們作出決策或采取行動(dòng)的有很高價(jià)值的一種信息形態(tài)” 可以很快地將信息從一個(gè)地方轉(zhuǎn)移到另一個(gè)地方,但將知識(shí)從一個(gè)人轉(zhuǎn)移給另一個(gè)人經(jīng)常是很困難和很慢的,學(xué)習(xí)知識(shí),信息與知識(shí),信息管理 信息管理通過收集、處理、濃縮信息以達(dá)到有效的管理 知識(shí)管理 知識(shí)管理的焦點(diǎn)是通過信息的收集、存儲(chǔ)、發(fā)布、重用等獲得人的交流與知識(shí)共享達(dá)到知識(shí)的創(chuàng)新目的 知識(shí)管理是一個(gè)過程,個(gè)人通過這一過程學(xué)習(xí)新知識(shí)和獲得新經(jīng)驗(yàn),并將這些新知識(shí)和新經(jīng)驗(yàn)反應(yīng)出來,進(jìn)行共享,以用來促進(jìn)培養(yǎng)、增強(qiáng)個(gè)人的知識(shí)和機(jī)構(gòu)組織的價(jià)值 知識(shí)管理應(yīng)該是組織有意識(shí)采取的一種戰(zhàn)略,它保證能夠在最需要的時(shí)間將最需要的知識(shí)傳送給最需要的人。這樣可以幫助人們共享信息,并進(jìn)而將之通過不同的方式付諸實(shí)踐,最終達(dá)到提高組織業(yè)績(jī)的目的,1.1.2 數(shù)據(jù) (Data),1. 數(shù)據(jù)的定義 數(shù)據(jù)是用來記錄信息的可識(shí)別的符號(hào),是信息的具體表現(xiàn)形式 2. 數(shù)據(jù)的表現(xiàn)形式 可用多種不同的數(shù)據(jù)形式表示同一信息,而信息不隨數(shù)據(jù)形式的不同而改變 如“2005年碩士研究生將擴(kuò)招20%”,其中的數(shù)據(jù)可改為漢字形式“兩千零五年”、“百分之二十” 數(shù)據(jù)的概念在數(shù)據(jù)處理領(lǐng)域中已大大地拓寬了,其表現(xiàn)形式不僅包括數(shù)字和文字,還包括圖形、圖象、聲音等。這些數(shù)據(jù)可以記錄在紙上,也可記錄在各種存儲(chǔ)器中。 3. 數(shù)據(jù)與信息的聯(lián)系 數(shù)據(jù)是信息的符號(hào)表示或載體,信息則是數(shù)據(jù)的內(nèi)涵,是對(duì)數(shù)據(jù)的語義解釋 數(shù)據(jù)是符號(hào)化的信息;信息是語義化的數(shù)據(jù) 如上例中的數(shù)據(jù)2005、30%被賦予了特定的語義,它們就具有了傳遞信息的功能,1.1.3 數(shù)據(jù)處理,數(shù)據(jù)處理是將數(shù)據(jù)轉(zhuǎn)換成信息的過程,包括對(duì)數(shù)據(jù)的收集、存儲(chǔ)、加工、檢索、傳輸?shù)纫幌盗谢顒?dòng)。其目的是從大量的原始數(shù)據(jù)中抽取和推導(dǎo)出有價(jià)值的信息,作為決策的依據(jù) 可用下式簡(jiǎn)單的表示信息、數(shù)據(jù)與數(shù)據(jù)處理的關(guān)系: 信息=數(shù)據(jù)+數(shù)據(jù)處理 數(shù)據(jù)是原料,是輸入,而信息是產(chǎn)出,是輸出結(jié)果?!靶畔⑻幚怼钡恼嬲x應(yīng)該是為了產(chǎn)生信息而處理數(shù)據(jù) 數(shù)據(jù)處理的中心問題是數(shù)據(jù)管理 數(shù)據(jù)管理是指對(duì)數(shù)據(jù)的組織、分類、編碼、存儲(chǔ)、檢索和維護(hù),1.1.4 數(shù)據(jù)管理,1人工管理階段(20世紀(jì)50年代中期以前) 背景 這一階段計(jì)算機(jī)主要用于科學(xué)計(jì)算,數(shù)據(jù)量小、結(jié)構(gòu)簡(jiǎn)單,如高階方程、曲線擬和等 硬件中的外存只有卡片、紙帶、磁帶,沒有磁盤等直接存取設(shè)備 軟件只有機(jī)器語言,沒有操作系統(tǒng)和數(shù)據(jù)管理數(shù)據(jù)的軟件 用戶用機(jī)器指令編碼,通過紙帶機(jī)輸入程序和數(shù)據(jù),程序運(yùn)行完畢后,由用戶取走紙帶和運(yùn)算結(jié)果,再讓下一用戶上機(jī)操作,人工管理階段,特點(diǎn) 1. 數(shù)據(jù)不保存 因?yàn)楫?dāng)時(shí)計(jì)算機(jī)主要用于科學(xué)計(jì)算,對(duì)于數(shù)據(jù)保存的需求尚不迫切 2. 系統(tǒng)沒有專用的軟件對(duì)數(shù)據(jù)進(jìn)行管理 每個(gè)應(yīng)用程序都要包括數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)、存取方法、輸入方式等,程序員編寫應(yīng)用程序時(shí),還要安排數(shù)據(jù)的物理存儲(chǔ),因此程序員負(fù)擔(dān)很重 3. 數(shù)據(jù)不共享 數(shù)據(jù)是面向程序的,一組數(shù)據(jù)只能對(duì)應(yīng)一個(gè)程序 多個(gè)應(yīng)用程序涉及某些相同的數(shù)據(jù)時(shí),也必須各自定義,因此程序之間有大量的冗余數(shù)據(jù) 4. 數(shù)據(jù)不具有獨(dú)立性 程序依賴于數(shù)據(jù),如果數(shù)據(jù)的類型、格式、或輸入輸出方式等邏輯結(jié)構(gòu)或物理結(jié)構(gòu)發(fā)生變化,必須對(duì)應(yīng)用程序做出相應(yīng)的修改,人工管理階段,2文件系統(tǒng)階段(20世紀(jì)50年代后期至60年代中期) 背景 這一階段計(jì)算機(jī)不僅用于科學(xué)計(jì)算,還大量用于信息管理 大量的數(shù)據(jù)存儲(chǔ)、檢索和維護(hù)成為緊迫的需求 硬件有了磁盤、磁鼓等直接存儲(chǔ)設(shè)備 在軟件方面,出現(xiàn)了高級(jí)語言和操作系統(tǒng) 操作系統(tǒng)中有了專門管理數(shù)據(jù)的軟件,一般稱為文件系統(tǒng) 處理方式有批處理,也有聯(lián)機(jī)實(shí)時(shí)處理,1.1.4 數(shù)據(jù)管理,特點(diǎn) 1. 數(shù)據(jù)以文件形式可長(zhǎng)期保存下來 用戶可隨時(shí)對(duì)文件進(jìn)行查詢、修改和增刪等處理 2. 文件系統(tǒng)可對(duì)數(shù)據(jù)的存取進(jìn)行管理 程序員只與文件名打交道,不必明確數(shù)據(jù)的物理存儲(chǔ),大大減輕了程序員的負(fù)擔(dān) 3. 文件形式多樣化 有順序文件、倒排文件、索引文件等,因而對(duì)文件的記錄可順序訪問,也可隨機(jī)訪問,更便于存儲(chǔ)和查找數(shù)據(jù) 4. 程序與數(shù)據(jù)間有一定獨(dú)立性 由專門的軟件即文件系統(tǒng)進(jìn)行數(shù)據(jù)管理,程序和數(shù)據(jù)間由軟件提供的存取方法進(jìn)行轉(zhuǎn)換,數(shù)據(jù)存儲(chǔ)發(fā)生變化不一定影響程序的運(yùn)行,文件系統(tǒng)階段,文件系統(tǒng)階段,文件系統(tǒng)階段,缺陷 1. 數(shù)據(jù)獨(dú)立性低 ( Poor data relationship ) 文件系統(tǒng)的出現(xiàn)并沒有從根本上改變數(shù)據(jù)與程序緊密結(jié)合的狀況,數(shù)據(jù)的邏輯結(jié)構(gòu)改變則必須修改應(yīng)用程序 文件系統(tǒng)只是解脫了程序員對(duì)物理設(shè)備存取的負(fù)擔(dān),它并不理解數(shù)據(jù)的語義,只負(fù)責(zé)存儲(chǔ) 數(shù)據(jù)的語義信息只能由程序來解釋,也就是說,數(shù)據(jù)收集以后怎么組織,以及數(shù)據(jù)取出來之后按什么含義應(yīng)用,只有全權(quán)管理它的程序知道。 一個(gè)應(yīng)用若想共享另一個(gè)應(yīng)用生成的數(shù)據(jù),必須同另一個(gè)應(yīng)用溝通,了解數(shù)據(jù)的語義與組織方式,文件系統(tǒng)階段,2. 數(shù)據(jù)冗余度大(Redundancy ) 各數(shù)據(jù)文件之間沒有有機(jī)的聯(lián)系,一個(gè)文件基本上對(duì)應(yīng)于一個(gè)應(yīng)用程序,即使不同應(yīng)用程序所需要的數(shù)據(jù)有部分相同時(shí),也必須建立各自的文件,而不能共享相同的數(shù)據(jù) 3.數(shù)據(jù)一致性差 ( Inconsistency ) 由于相同數(shù)據(jù)的重復(fù)存儲(chǔ)、各自管理,在進(jìn)行更新操作時(shí),容易造成數(shù)據(jù)的不一致性。,文件系統(tǒng)階段,數(shù)據(jù)一致性 難于保證,數(shù)據(jù)查詢困難 記錄之間無聯(lián)系 應(yīng)用自己編程實(shí)現(xiàn) 對(duì)每個(gè)查詢都重新編碼,3數(shù)據(jù)庫系統(tǒng)階段 ( 20世紀(jì)60年代末) 背景 20世紀(jì)60年代末發(fā)生了對(duì)數(shù)據(jù)庫技術(shù)有著奠基作用的3件大事,標(biāo)志著以數(shù)據(jù)庫系統(tǒng)為基本手段的數(shù)據(jù)管理階段的開始。 (1)1968年美國(guó)的IBM公司推出了世界上第一個(gè)數(shù)據(jù)庫管理系統(tǒng)IMS,它是基于層次模型的 (2)1969年美國(guó)數(shù)據(jù)系統(tǒng)語言協(xié)會(huì)(CODASYL)的數(shù)據(jù)庫任務(wù)組(DBTG)發(fā)表了網(wǎng)狀數(shù)據(jù)模型的DBTG報(bào)告 (3)1970年美國(guó)IBM公司的高級(jí)研究員 E. F. Codd連續(xù)發(fā)表論文,提出了關(guān)系數(shù)據(jù)模型,奠定了關(guān)系數(shù)據(jù)庫的理論基礎(chǔ)。,1.1.4 數(shù)據(jù)管理,數(shù)據(jù)庫系統(tǒng)階段,特點(diǎn) 1. 數(shù)據(jù)共享性高、冗余少 這是數(shù)據(jù)庫系統(tǒng)階段的最大改進(jìn),數(shù)據(jù)不再面向某個(gè)應(yīng)用程序而是面向整個(gè)系統(tǒng),當(dāng)前所有用戶可同時(shí)存取庫中的數(shù)據(jù)。 這樣便減少了不必要的數(shù)據(jù)冗余,節(jié)約存儲(chǔ)空間,同時(shí)也避免了數(shù)據(jù)之間的不相容性與不一致性。 2. 數(shù)據(jù)結(jié)構(gòu)化 按照某種數(shù)據(jù)模型,將全組織的各種數(shù)據(jù)組織到一個(gè)結(jié)構(gòu)化的數(shù)據(jù)庫中,整個(gè)組織的數(shù)據(jù)不是一盤散沙,可表示出數(shù)據(jù)之間的有機(jī)關(guān)聯(lián)。,數(shù)據(jù)庫系統(tǒng)階段,3. 數(shù)據(jù)獨(dú)立性高 數(shù)據(jù)的獨(dú)立性是指邏輯獨(dú)立性和物理獨(dú)立性。 數(shù)據(jù)的邏輯獨(dú)立性是指當(dāng)數(shù)據(jù)的總體邏輯結(jié)構(gòu)改變時(shí),數(shù)據(jù)的局部邏輯結(jié)構(gòu)不變,由于應(yīng)用程序是依據(jù)數(shù)據(jù)的局部邏輯結(jié)構(gòu)編寫的,所以應(yīng)用程序不必須修改,從而保證了數(shù)據(jù)與程序間的邏輯獨(dú)立性。 例如,在原有的記錄類型之間增加新的聯(lián)系,或在某些記錄類型中增加新的數(shù)據(jù)項(xiàng),均可確保數(shù)據(jù)的邏輯獨(dú)立性。 數(shù)據(jù)的物理獨(dú)立性是指當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),數(shù)據(jù)的邏輯結(jié)構(gòu)不變,從而應(yīng)用程序也不必改變。 例如,改變存儲(chǔ)設(shè)備和增加新的存儲(chǔ)設(shè)備,或改變數(shù)據(jù)的存儲(chǔ)組織方式,均可確保數(shù)據(jù)的物理獨(dú)立性。,數(shù)據(jù)庫系統(tǒng)階段,4. 有統(tǒng)一的數(shù)據(jù)控制功能 數(shù)據(jù)庫為多個(gè)用戶和應(yīng)用程序所共享,對(duì)數(shù)據(jù)的存取往往是并發(fā)的,即多個(gè)用戶可以同時(shí)存取數(shù)據(jù)庫中的數(shù)據(jù),甚至可以同時(shí)存取數(shù)據(jù)庫中的同一個(gè)數(shù)據(jù),為確保數(shù)據(jù)庫數(shù)據(jù)的正確有效和數(shù)據(jù)庫系統(tǒng)的有效運(yùn)行,數(shù)據(jù)庫管理系統(tǒng)提供下述四方面的數(shù)據(jù)控制功能。 (1)數(shù)據(jù)的安全性(security)控制:防止不合法使用數(shù)據(jù)造成數(shù)據(jù)的泄露和破壞,保證數(shù)據(jù)的安全和機(jī)密; 例如,系統(tǒng)提供口令檢查或其他手段來驗(yàn)證用戶身份,防止非法用戶使用系統(tǒng);也可以對(duì)數(shù)據(jù)的存取權(quán)限進(jìn)行限制,只有通過檢查后才能執(zhí)行相應(yīng)的操作。,數(shù)據(jù)庫系統(tǒng)階段,(2)數(shù)據(jù)的完整性(integrity)控制:系統(tǒng)通過設(shè)置一些完整性規(guī)則以確保數(shù)據(jù)的正確性、有效性和相容性。 正確性是指數(shù)據(jù)的合法性,如年齡屬于數(shù)值型數(shù)據(jù),只能含0,1,9,不能含字母或特殊符號(hào) 有效性是指數(shù)據(jù)是否在其定義的有效范圍,如月份只能用112之間的正整數(shù)表示 相容性是指表示同一事實(shí)的兩個(gè)數(shù)據(jù)應(yīng)相同,否則就不相容,如一個(gè)人不能有兩個(gè)性別 (3)并發(fā)(concurrency)控制:多用戶同時(shí)存取或修改數(shù)據(jù)庫時(shí),防止相互干擾而提供給用戶不正確的數(shù)據(jù),并使數(shù)據(jù)庫受到破壞 (4)數(shù)據(jù)恢復(fù)(recovery) :當(dāng)數(shù)據(jù)庫被破壞或數(shù)據(jù)不可靠時(shí),系統(tǒng)有能力將數(shù)據(jù)庫從錯(cuò)誤狀態(tài)恢復(fù)到最近某一時(shí)刻的正確狀態(tài)。,數(shù)據(jù)庫系統(tǒng)階段,數(shù)據(jù)庫系統(tǒng)階段,數(shù)據(jù)庫觀點(diǎn) 數(shù)據(jù)不是依賴于處理過程的附屬品,而是現(xiàn)實(shí)世界中獨(dú)立存在的對(duì)象,從文件系統(tǒng)管理發(fā)展到數(shù)據(jù)庫系統(tǒng)管理是信息處理領(lǐng)域的一個(gè)重大變化。 在文件系統(tǒng)階段,人們關(guān)注的是系統(tǒng)功能的設(shè)計(jì),因此程序設(shè)計(jì)處于主導(dǎo)地位,數(shù)據(jù)服從于程序設(shè)計(jì); 而在數(shù)據(jù)庫系統(tǒng)階段,數(shù)據(jù)的結(jié)構(gòu)設(shè)計(jì)成為信息系統(tǒng)首先關(guān)心的問題。 數(shù)據(jù)庫技術(shù)經(jīng)歷了以上三個(gè)階段的發(fā)展,已有了比較成熟的數(shù)據(jù)庫技術(shù),但隨著計(jì)算機(jī)軟硬件的發(fā)展,數(shù)據(jù)庫技術(shù)仍需不斷向前發(fā)展。,數(shù)據(jù)庫系統(tǒng)階段,1.2.1 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),模式(Schema)是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。 例如:學(xué)生記錄定義為(學(xué)號(hào)、姓名、性別、系別、年齡),稱為記錄型, 而(001101,張立,男,計(jì)算機(jī),20)則是該記錄型的一個(gè)記錄值。 模式只是對(duì)記錄型的描述,而與具體的值無關(guān)。 數(shù)據(jù)庫模式與數(shù)據(jù)庫的概念是有區(qū)別的。數(shù)據(jù)庫模式是數(shù)據(jù)庫的結(jié)構(gòu)描述,只是一個(gè)建立數(shù)據(jù)庫的框架,它本身不涉及具體的數(shù)據(jù);數(shù)據(jù)庫是按照數(shù)據(jù)庫模式的規(guī)定裝入數(shù)據(jù)而建立的,它是數(shù)據(jù)庫模式的一個(gè)“實(shí)例”(Instance)。數(shù)據(jù)庫中的數(shù)據(jù)是經(jīng)常變化的,而數(shù)據(jù)庫模式一般是不變或很少變化的。,模式的分級(jí) 為了提高數(shù)據(jù)的物理獨(dú)立性和邏輯獨(dú)立性,使數(shù)據(jù)庫的用戶觀點(diǎn),即用戶看到的數(shù)據(jù)庫,與數(shù)據(jù)庫的物理方面,即實(shí)際存儲(chǔ)的數(shù)據(jù)庫區(qū)分開來,數(shù)據(jù)庫系統(tǒng)的模式是分級(jí)的 數(shù)據(jù)庫系統(tǒng)三級(jí)模式結(jié)構(gòu) CODASYL(Conference On Data System Language,美國(guó)數(shù)據(jù)系統(tǒng)語言協(xié)商會(huì))提出模式、外模式、內(nèi)模式三級(jí)模式的概念。三級(jí)模式之間有兩級(jí)映象,1.2.1 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),1.2.1 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu),1. 模式 模式(Schema)是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,又稱概念模式或概念視圖。視圖可理解為一組記錄的值,用戶或程序員看到和使用的數(shù)據(jù)庫的內(nèi)容。 模式處于三級(jí)結(jié)構(gòu)的中間層,它是整個(gè)數(shù)據(jù)庫實(shí)際存儲(chǔ)的抽象表示,也是對(duì)現(xiàn)實(shí)世界的一個(gè)抽象,是現(xiàn)實(shí)世界某應(yīng)用環(huán)境(企業(yè)或單位)的所有信息內(nèi)容集合的表示,也是所有個(gè)別用戶視圖綜合起來的結(jié)果,所以又稱用戶共同視圖。 它表示了數(shù)據(jù)庫的整體數(shù)據(jù)。 由多個(gè)“概念記錄”組成,包含數(shù)據(jù)庫的所有信息,也稱“概念數(shù)據(jù)庫”、“DBA視圖”。 DBMS 提供模式描述語言(模式 DDL Data Description Language )來定義模式。,2. 外模式 又稱子模式或用戶模式或外視圖,是三級(jí)結(jié)構(gòu)的最外層,個(gè)別用戶只對(duì)整個(gè)數(shù)據(jù)庫的一部分感興趣,所以外視圖是個(gè)別用戶看到和使用的數(shù)據(jù)庫內(nèi)容,因此也常把外視圖稱為用戶數(shù)據(jù)庫。 它由多種外記錄值構(gòu)成,這些記錄值是概念視圖的某一部分的抽象表示。即個(gè)別用戶看到和使用的數(shù)據(jù)庫內(nèi)容,也稱“用戶DB”。 由多個(gè)“外記錄值”組成,是概念視圖的某一部分的抽象表示。 從邏輯關(guān)系上看,外模式包含于概念模式。 DBMS 提供子模式描述語言(子模式 DDL)來定義子模式。,數(shù)據(jù)庫模式,S(S#,SNAME,SEX,AGE,ADDRESS,CREDIT,DEGREE),S(S#,SNAME,ADDRESS),學(xué)籍科,S(S#,SNAME,CREDIT),房產(chǎn)科,視圖,視圖,模式,3. 內(nèi)模式 又稱存儲(chǔ)模式或內(nèi)視圖,是三級(jí)結(jié)構(gòu)中的最內(nèi)層,也是靠近物理存儲(chǔ)的一層,即與實(shí)際存儲(chǔ)數(shù)據(jù)方式有關(guān)的一層,由多個(gè)存儲(chǔ)記錄組成,但并非物理層,不必關(guān)心具體的存儲(chǔ)位置。內(nèi)模式中定義的是存儲(chǔ)記錄的類型、存儲(chǔ)域的表示,存儲(chǔ)記錄的物理順序、指引元、索引和存取路徑等數(shù)據(jù)的存儲(chǔ)組織。 DBMS 提供內(nèi)模式描述語言(內(nèi)模式 DDL)來定義內(nèi)模式。 在數(shù)據(jù)庫系統(tǒng)中,外模式可有多個(gè),而概念模式、內(nèi)模式只能各有一個(gè)。 內(nèi)模式是整個(gè)數(shù)據(jù)庫實(shí)際存儲(chǔ)的表示,而概念模式是整個(gè)數(shù)據(jù)庫實(shí)際存儲(chǔ)的抽象表示,外模式是概念模式的某一部分的抽象表示。,三級(jí)結(jié)構(gòu)的優(yōu)點(diǎn) (1)保證數(shù)據(jù)的獨(dú)立性。 將模式和內(nèi)模式分開,保證了數(shù)據(jù)的物理獨(dú)立性; 將外模式和模式分開,保證了數(shù)據(jù)的邏輯獨(dú)立性。 (2)簡(jiǎn)化了用戶接口。 按照外模式編寫應(yīng)用程序或敲入命令,而不需了解數(shù)據(jù)庫內(nèi)部的存儲(chǔ)結(jié)構(gòu),方便用戶使用系統(tǒng)。 (3)有利于數(shù)據(jù)共享。 在不同的外模式下可有多個(gè)用戶共享系統(tǒng)中數(shù)據(jù),減少了數(shù)據(jù)冗余。 (4)利于數(shù)據(jù)的安全保密。 在外模式下根據(jù)要求進(jìn)行操作,不能對(duì)限定的數(shù)據(jù)操作,保證了其他數(shù)據(jù)的安全。,1.2.1 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),1.2.2 數(shù)據(jù)庫系統(tǒng)的二級(jí)映象,數(shù)據(jù)庫系統(tǒng)的三級(jí)模式是對(duì)數(shù)據(jù)的三個(gè)抽象級(jí)別,它使用戶能邏輯地抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計(jì)算機(jī)內(nèi)部的存儲(chǔ)方式,把數(shù)據(jù)的具體組織交給 DBMS 管理 為了能夠在內(nèi)部實(shí)現(xiàn)這三個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換,DBMS 在三級(jí)模式之間提供了二級(jí)映象功能,1. 模式/內(nèi)模式映象 數(shù)據(jù)庫中的模式和內(nèi)模式都只有一個(gè),所以模式/內(nèi)模式映象是唯一的。 它確定了數(shù)據(jù)的全局邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。 例如,存儲(chǔ)結(jié)構(gòu)變化時(shí),模式/內(nèi)模式映象也應(yīng)有相應(yīng)的變化,使其概念模式仍保持不變,即把存儲(chǔ)結(jié)構(gòu)的變化的影響限制在概念模式之下,這使數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)和存儲(chǔ)方法較高的獨(dú)立于應(yīng)用程序,通過映象功能保證數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)的變化不影響數(shù)據(jù)的全局邏輯結(jié)構(gòu)的改變,從而不必修改應(yīng)用程序,即確保了數(shù)據(jù)的物理獨(dú)立性。,2.外模式/模式映象 數(shù)據(jù)庫中的同一模式可以有任意多個(gè)外模式,對(duì)于每一個(gè)外模式,都存在一個(gè)外模式/模式映象 它確定了數(shù)據(jù)的局部邏輯結(jié)構(gòu)與全局邏輯結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。 例如,在原有的記錄類型之間增加新的聯(lián)系,或在某些記錄類型中增加新的數(shù)據(jù)項(xiàng)時(shí),使數(shù)據(jù)的總體邏輯結(jié)構(gòu)改變,外模式/模式映象也發(fā)生相應(yīng)的變化, 這一映象功能保證了數(shù)據(jù)的局部邏輯結(jié)構(gòu)不變,由于應(yīng)用程序是依據(jù)數(shù)據(jù)的局部邏輯結(jié)構(gòu)編寫的,所以應(yīng)用程序不必須修改,從而保證了數(shù)據(jù)與程序間的邏輯獨(dú)立性。,1.2.3 數(shù)據(jù)庫模式,ANSI/X3/SPARC提出SPARC報(bào)告,其ANSI模型將數(shù)據(jù)庫模式分為外部級(jí)、概念級(jí)、內(nèi)部級(jí) 外部級(jí)數(shù)據(jù)庫對(duì)應(yīng)于外模式,也稱為用戶視圖。每一個(gè)用戶視圖均由用戶所處理的一組外部記錄組成,不同的用戶視圖可以相互重疊。 概念級(jí)數(shù)據(jù)庫對(duì)應(yīng)于概念模式,是介于用戶級(jí)和物理級(jí)之間的中間級(jí),是所有用戶視圖的一個(gè)最小并集,又稱為 DBA視圖。 內(nèi)部級(jí)數(shù)據(jù)庫對(duì)應(yīng)于內(nèi)模式,又稱為內(nèi)部視圖。它描述了數(shù)據(jù)的實(shí)際存儲(chǔ)組織,是最接近物理存儲(chǔ)的一級(jí)。內(nèi)部視圖由內(nèi)部記錄組成。,1.3.1 DBMS的功能,數(shù)據(jù)庫管理系統(tǒng)(DBMS)是一種負(fù)責(zé)數(shù)據(jù)庫的定義、建立、操作、管理和維護(hù)的軟件系統(tǒng)。 用戶在數(shù)據(jù)庫系統(tǒng)中的一切操作,包括數(shù)據(jù)定義、查詢、更新及各種控制,都是通過DBMS進(jìn)行的 DBMS就是實(shí)現(xiàn)把用戶意義下的抽象的邏輯數(shù)據(jù)處理轉(zhuǎn)換成計(jì)算機(jī)中的具體的物理數(shù)據(jù)的處理軟件,這給用戶帶來很大的方便,1. 數(shù)據(jù)定義 DBMS提供數(shù)據(jù)定義語言DDL(Data Define Language),定義數(shù)據(jù)的模式、外模式和內(nèi)模式三級(jí)模式結(jié)構(gòu),定義模式/內(nèi)模式和外模式/模式二級(jí)映象,定義有關(guān)的約束條件 注意:用DDL書寫的都是源模式,系統(tǒng)不能直接使用,必須由DBMS的DDL編譯程序?qū)⒃茨J骄幾g城二進(jìn)制的目標(biāo)碼,成為機(jī)器可執(zhí)行的目標(biāo)模式,放在目標(biāo)庫即數(shù)據(jù)字典中,供系統(tǒng)隨時(shí)調(diào)用,1.3.1 DBMS的功能,2. 數(shù)據(jù)操縱 DBMS提供數(shù)據(jù)操縱語言DML(Data Manipulation Language)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的基本操作,包括檢索、插入、修改、刪除等 DML類型 宿主型 DML不獨(dú)立使用,嵌入到高級(jí)語言(主語言,如C、Fortran、COBOL )程序中使用 自含型 獨(dú)立使用,交互式命令方式,如SQL、QBE等,1.3.1 DBMS的功能,3. 數(shù)據(jù)庫運(yùn)行管理 DBMS 對(duì)數(shù)據(jù)庫的控制主要通過四個(gè)方面實(shí)現(xiàn): 數(shù)據(jù)的安全性控制 數(shù)據(jù)的完整性控制 多用戶環(huán)境下的并發(fā)控制 數(shù)據(jù)庫的恢復(fù),以確保數(shù)據(jù)正確有效和數(shù)據(jù)庫系統(tǒng)的正常運(yùn)行 4. 數(shù)據(jù)庫的建立和維護(hù)功能 包括數(shù)據(jù)庫的初始數(shù)據(jù)的裝入, 數(shù)據(jù)庫的轉(zhuǎn)儲(chǔ)、恢復(fù)、重組織, 系統(tǒng)性能監(jiān)視、分析等功能。,1.3.1 DBMS的功能,1.3.2 DBMS的組成,1. 語言編譯處理程序 (1)數(shù)據(jù)定義語言DDL及其編譯程序 它把用DDL編寫的各級(jí)源模式編譯成各級(jí)目標(biāo)模式,這些目標(biāo)模式是對(duì)數(shù)據(jù)庫結(jié)構(gòu)信息的描述,而不是數(shù)據(jù)本身,它們被保存在數(shù)據(jù)字典中,供以后數(shù)據(jù)操縱或數(shù)據(jù)控制時(shí)使用。 (2)數(shù)據(jù)操縱語言DML及其編譯程序,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的基本操作。,1.3.2 DBMS的組成,2. 系統(tǒng)運(yùn)行控制程序 系統(tǒng)總控程序:是DBMS運(yùn)行程序的核心,用于控制和協(xié)調(diào)各程序的活動(dòng); 安全性控制程序:防止未被授權(quán)的用戶存取數(shù)據(jù)庫中的數(shù)據(jù) 完整性控制程序:檢查完整性約束條件,確保進(jìn)入數(shù)據(jù)庫中的數(shù)據(jù)的正確性、有效性和相容性; 并發(fā)控制程序:協(xié)調(diào)多用戶、多任務(wù)環(huán)境下各應(yīng)用程序?qū)?shù)據(jù)庫的并以操作,保證數(shù)據(jù)的一致性; 數(shù)據(jù)存取和更新程序:實(shí)施對(duì)數(shù)據(jù)庫數(shù)據(jù)的檢索、插入、修改、刪除等操作; 通信控制程序:實(shí)現(xiàn)用戶程序與DBMS間的通信,1.3.2 DBMS的組成,3. 系統(tǒng)建立、維護(hù)程序 裝配程序:完成初始數(shù)據(jù)庫的數(shù)據(jù)裝入; 重組程序:當(dāng)數(shù)據(jù)庫系統(tǒng)性能變壞時(shí)(如查詢速度變慢),需要重新組織數(shù)據(jù)庫,重新裝入數(shù)據(jù); 系統(tǒng)恢復(fù)程序:當(dāng)數(shù)據(jù)庫系統(tǒng)受到破壞時(shí),將數(shù)據(jù)庫系統(tǒng)恢復(fù)到以前某個(gè)正確的狀態(tài)。 4. 數(shù)據(jù)字典(Data Dictionary,簡(jiǎn)稱DD) 用來描述數(shù)據(jù)庫中有關(guān)信息的數(shù)據(jù)目錄, 包括數(shù)據(jù)庫的三級(jí)模式、數(shù)據(jù)類型、用戶名、用戶權(quán)限等有關(guān)數(shù)據(jù)庫系統(tǒng)的信息, 起著系統(tǒng)狀態(tài)的目錄表的作用, 幫助用戶、DBA 、DBMS本身使用和管理數(shù)據(jù)庫。,1.3.3 DBMS的層次結(jié)構(gòu),1.3.4 DBMS的數(shù)據(jù)存取的過程,用戶存取數(shù)據(jù)的過程,運(yùn)行日志,9,10,1,1.4 DBS,1.4.3 DBS的特點(diǎn),1.4.2 DBS的結(jié)構(gòu)分類,1.4.1 DBS的組成,1.4.1 DBS的組成,DBS定義: 帶有數(shù)據(jù)庫的整個(gè)計(jì)算機(jī)系統(tǒng),包括硬件、軟件、數(shù)據(jù)、人員。包括5個(gè)主要組成部分:數(shù)據(jù)庫、軟件、硬件、數(shù)據(jù)庫管理員和用戶 1數(shù)據(jù)庫(Database,DB) 是某一組織中各種應(yīng)用所需要保存和處理的數(shù)據(jù)的集合,數(shù)據(jù)結(jié)構(gòu)化地存放在數(shù)據(jù)庫中,完全地或部分地消除了數(shù)據(jù)的冗余。數(shù)據(jù)庫中的數(shù)據(jù)能為用戶共享 通常由兩大部分組成:一部分是應(yīng)用所需要的數(shù)據(jù)的集合,稱為物理數(shù)據(jù)庫,它是數(shù)據(jù)庫的主體;另一部分是關(guān)于各級(jí)數(shù)據(jù)結(jié)構(gòu)的描述,稱為描述數(shù)據(jù)庫,2硬件環(huán)境(Hardware) 包括存放數(shù)據(jù)文件的大容量存儲(chǔ)器,以及相應(yīng)的I/O設(shè)備、CPU和系統(tǒng)軟件等,它們構(gòu)成了數(shù)據(jù)庫系統(tǒng)的運(yùn)行環(huán)境。而在數(shù)據(jù)處理中,數(shù)據(jù)處理的速度除了與計(jì)算機(jī)本身的運(yùn)算速度有關(guān)外,更主要的因素就是I/O所占的時(shí)間。在為數(shù)據(jù)庫系統(tǒng)選擇運(yùn)行環(huán)境時(shí),要著重考慮I/O的速度和存儲(chǔ)容量。對(duì)于分布式數(shù)據(jù)庫系統(tǒng)或網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng),還需要考慮數(shù)據(jù)在網(wǎng)絡(luò)上的傳輸速度。 3軟件 (Software) 包括OS,DBMS,高級(jí)語言編譯系統(tǒng)及其與數(shù)據(jù)庫的接口,應(yīng)用開發(fā)工具,應(yīng)用系統(tǒng)等,1.4.1 DBS的組成,4數(shù)據(jù)庫管理員(Database Administrator,DBA) 主要負(fù)責(zé)設(shè)計(jì)、建立、管理和維護(hù)數(shù)據(jù)庫,協(xié)調(diào)各用戶對(duì)數(shù)據(jù)庫的要求等,他們對(duì)程序語言和系統(tǒng)軟件(如OS、DBMS等)都比較熟悉,還要了解各應(yīng)用部門的所有業(yè)務(wù)工作。DBA 不一定只是一個(gè)人,它往往是一個(gè)工作小組。其主要職責(zé)如下: 參與數(shù)據(jù)庫設(shè)計(jì)的全

溫馨提示

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