計算機技術基礎(C語言)引言.ppt
《計算機技術基礎(C語言)引言.ppt》由會員分享,可在線閱讀,更多相關《計算機技術基礎(C語言)引言.ppt(216頁珍藏版)》請在裝配圖網(wǎng)上搜索。
,,1,數(shù)據(jù)庫系統(tǒng)概論,邢躍林 ISE @ Shandong University 2016,2,About the Course,課程名稱:《數(shù)據(jù)庫系統(tǒng)概論》 課程代碼:sd01232410 課程概要:本課程以Microsoft SQL Server 2008為例,C語言為媒介,介紹計算機技術的基本知識,學習如何通過編程來操作計算機。 上課教室:興隆山群樓A-210d 任課教師:邢躍林 博士 課時安排:周一12節(jié)(4-14周) + 周三34節(jié)(5,7,9,11,13周) 上機安排:待定 課程QQ群號:493085807,,3,About me,主講教師 邢躍林 理學博士 副教授 山東大學信息科學與工程學院 Super_v 產(chǎn)品總設計師和團隊負責人 http://www.super- 興趣方向 多媒體通信理論和技術 / 多媒體教育支撐系統(tǒng) 視頻和音頻編碼技術/ 視頻和音頻傳輸技術 / p2p技術和應用 移動終端應用開發(fā) ios/ Java/ html5,,4,引言,關于課程最重要的幾個問題。,,5,Q1-什么是計算機?,通俗講,計算機是能夠按照人類的意志或意愿自動工作以幫助人們完成某些工作任務的一種數(shù)字電子設備或機器。 形而上學的角度講,計算機是人們在認識世界、改造世界的實踐活動中發(fā)明、創(chuàng)造的一種工具。 人類發(fā)明創(chuàng)造任何一種的工具的目的,都是希望它們能---增強或拓展---人類身體器官某些方面的機能或功能。顯微鏡、望遠鏡 彌補人類視覺功能方面的不足。 發(fā)明計算機的目的,簡單說,希望它能夠進一步增強人類大腦的計算與思維能力。 計算機正成為人類的一種生存方式,在利用計算機的同時,希望你能避免被它俘虜。 你平時見到的計算機有哪些?,,6,Q2-計算機有什么特點?,運算速度快、精度高 具有邏輯判斷能力 工作可靠 自動化程度高 通用性強 存儲容量大 具有多媒體處理功能,,7,Q3-計算機有哪些應用?,科學計算(數(shù)值計算)- 指用于完成科學研究和工程技術中提出的數(shù)學問題的計算。 數(shù)據(jù)處理 - 指對大量的數(shù)據(jù)進行加工處理,如分析、合并、分類、統(tǒng)計等。 過程控制(實時控制)- 指用計算機及時采集數(shù)據(jù)后,按最佳值迅速地對控制對象進行反饋控制。 計算機輔助系統(tǒng)-主要包括計算機輔助設計CAD、計算機輔助制造CAM、計算機輔助教學CAI等… 人工智能-是指模擬人腦進行演繹推理和采取決策的思維過程。 電子商務(E-Business)-是指通過計算機網(wǎng)絡進行商務活動。,,8,Q4-如何使用計算機?,通過操作系統(tǒng)直接使用計算機 圖形接口 命令行接口 使用應用程序 Office 程序 瀏覽器(ie,safari, Chrome)… 通過編程直接與計算機對話 機器語言,匯編,c,c++,java…,,9,Q5-為什么要學習程序設計?,計算機的本質是“程序的機器”,程序和指令的思想是計算機系統(tǒng)中最基本的概念; 只有懂得程序設計,才能進一步懂得計算機,真正了解計算機是怎樣工作的; 通過學習程序設計,可以更好的理解和應用計算機,掌握計算機處理問題的方法; 培養(yǎng)學生利用計算機技術分析問題和解決問題的能力…,,10,Q6-如何適應大學學習?,大學學習與中學的不同點 填鴨教學 vs.自主學習; 重復訓練 vs.快速掌握; 學習知識 vs.訓練思維; 掌握技能 vs.解決問題。 大學學習對你提出的新挑戰(zhàn) 調整學習的目標和學習動機; 自我約束,自我管理; 主動學習,目標管理; 熟悉環(huán)境,善用資源。,,11,本課程的目的,了解計算機的基本概念和基本原理 掌握C語言的基礎知識 掌握程序設計中常用的算法 能夠用C語言編寫簡單的程序 學以致用!,,12,本課程的主要內容,程序設計與C 語言概述 算法及其表示方法 數(shù)據(jù)類型、運算符和表達式 編寫程序(順序、選擇、循環(huán)結構程序設計) 數(shù)組,批量處理數(shù)據(jù) 函數(shù),實現(xiàn)模塊化程序設計 指針(難點),直接操縱計算機內存 文件與輸入輸出,,13,本課程的學習方法和紀律要求,記筆記的目的是什么? 自主學習: 由于C語言牽涉到的概念與你以前基礎的差別大,規(guī)則繁多,不容易理解,容易出錯,同學們在學習中要認真、刻苦。 預習:請在課前通讀教材,給自己提問題,并嘗試解答; 復習:課后編寫并運行所有事例代碼! 重視實踐:學會上機調試程序,養(yǎng)成獨立思維的能力,應掌握常用的編程算法,每次上機程序應保存。 紀律要求:按時上課,上機,完成作業(yè) 上機要求:時間和機會寶貴,不允許玩游戲。,,14,Textbooks,譚浩強《C程序設計》(第四版) 清華大學出版社 參考書目: 譚浩強《 C程序設計(第四版)學習輔導 》 清華大學出版社 計算機科學概論(第9版)Chapter 1 Computer Science: An Overview J.Glenn Brookshear,,數(shù)據(jù)庫系統(tǒng)概論 An Introduction to Database System,教材及參考書,? 教材 薩師煊,王珊:數(shù)據(jù)庫系統(tǒng)概論(第四版) , 高等教育出版社,2000 中國人民大學,教材及參考書(2),? 參考書 施伯樂,丁寶康:數(shù)據(jù)庫系統(tǒng)教程,高教出版社,2003,內容安排(1),? 基礎篇 第一章:緒論 第二章:關系數(shù)據(jù)庫 第三章:關系數(shù)據(jù)庫標準語言SQL 第四章:關系系統(tǒng)及其查詢優(yōu)化 第五章:關系數(shù)據(jù)理論 ? 設計篇 第六章:數(shù)據(jù)庫設計,內容安排(2),? 系統(tǒng)篇 第七章:數(shù)據(jù)庫恢復技術 第八章:并發(fā)控制 第九章:數(shù)據(jù)庫安全性 第十章:數(shù)據(jù)庫完整性,數(shù)據(jù)庫系統(tǒng)概論 An Introduction to Database System 第一章 緒論,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,1.1 數(shù)據(jù)庫系統(tǒng)概述,1.1.1 數(shù)據(jù)庫的地位 1.1.2 四個基本概念 1.1.3 數(shù)據(jù)管理技術的產(chǎn)生與發(fā)展,數(shù)據(jù)庫的地位,數(shù)據(jù)庫技術產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術,是計算機科學的重要分支 數(shù)據(jù)庫技術是信息系統(tǒng)的核心和基礎,它的出現(xiàn)極大地促進了計算機應用向各行各業(yè)的滲透 數(shù)據(jù)庫的建設規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標志,1.1 數(shù)據(jù)庫系統(tǒng)概述,1.1.1 數(shù)據(jù)庫的地位 1.1.2 四個基本概念 1.1.3 數(shù)據(jù)管理技術的產(chǎn)生與發(fā)展,1.1.2 四個基本概念,數(shù)據(jù)(Data) 數(shù)據(jù)庫(Database) 數(shù)據(jù)庫管理系統(tǒng)(DBMS) 數(shù)據(jù)庫系統(tǒng)(DBS),一、數(shù)據(jù),數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象 數(shù)據(jù)的定義 描述事物的符號記錄 數(shù)據(jù)的種類 文字、圖形、圖象、聲音 數(shù)據(jù)的特點 數(shù)據(jù)與其語義是不可分的,數(shù)據(jù)舉例,學生檔案中的學生記錄 (李明,男,1972,江蘇,計算機系,1990) 數(shù)據(jù)的形式不能完全表達其內容 數(shù)據(jù)的解釋 語義:學生姓名、性別、出生年月、籍貫、所在系別、入學時間 解釋:李明是個大學生,1972年出生,江蘇人,1990年考入計算機系 請給出另一個解釋和語義,二、數(shù)據(jù)庫(舉例),,二、數(shù)據(jù)庫(續(xù)),人們收集并抽取出一個應用所需要的大量數(shù)據(jù)之后,應將其保存起來以供進一步加工處理,進一步抽取有用信息 數(shù)據(jù)庫的定義 數(shù)據(jù)庫(Database,簡稱DB)是長期儲存在計算機內、有組織的、可共享的大量數(shù)據(jù)集合,二、數(shù)據(jù)庫(續(xù)),數(shù)據(jù)庫的特征 數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存 可為各種用戶共享 冗余度較小 數(shù)據(jù)獨立性較高 易擴展,三、數(shù)據(jù)庫管理系統(tǒng),什么是DBMS 數(shù)據(jù)庫管理系統(tǒng)(Database Management System,簡稱DBMS)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 DBMS的用途 科學地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù),DBMS的主要功能,數(shù)據(jù)定義功能 提供數(shù)據(jù)定義語言(DDL) 定義數(shù)據(jù)庫中的數(shù)據(jù)對象 數(shù)據(jù)操縱功能:提供數(shù)據(jù)操縱語言(DML) 操縱數(shù)據(jù)實現(xiàn)對數(shù)據(jù)庫的基本操作 (查詢、插入、刪除和修改),DBMS的主要功能,數(shù)據(jù)庫的運行管理 保證數(shù)據(jù)的安全性、完整性、 多用戶對數(shù)據(jù)的并發(fā)使用 發(fā)生故障后的系統(tǒng)恢復 數(shù)據(jù)庫的建立和維護功能(實用程序) 數(shù)據(jù)庫數(shù)據(jù)批量裝載 數(shù)據(jù)庫轉儲 介質故障恢復 數(shù)據(jù)庫的重組織 性能監(jiān)視等,四、數(shù)據(jù)庫系統(tǒng),什么是數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫系統(tǒng)(Database System,簡稱DBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構成。 在不引起混淆的情況下常常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。 數(shù)據(jù)庫系統(tǒng)的構成 由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應用系統(tǒng)、數(shù)據(jù)庫管理員(和用戶)構成。,數(shù)據(jù)庫系統(tǒng)(續(xù)),數(shù)據(jù)庫系統(tǒng)構成圖示 參看教材page_5 圖1.1 數(shù)據(jù)庫系統(tǒng)在計算機系統(tǒng)中的位置圖示 參看教材page_ 5 圖1.2,1.1 數(shù)據(jù)庫系統(tǒng)概述,1.1.1 數(shù)據(jù)庫的地位 1.1.2 四個基本概念 1.1.3 數(shù)據(jù)管理技術的產(chǎn)生與發(fā)展,1.1.3 數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展,什么是數(shù)據(jù)管理 對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護,是數(shù)據(jù)處理的中心問題 數(shù)據(jù)管理技術的發(fā)展過程 人工管理階段(40年代中--50年代中) 文件系統(tǒng)階段(50年代末--60年代中) 數(shù)據(jù)庫系統(tǒng)階段(60年代末--現(xiàn)在),數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展(續(xù)),數(shù)據(jù)管理技術的發(fā)展動力 應用需求的推動 計算機硬件的發(fā)展 計算機軟件的發(fā)展,一、人工管理,時期 40年代中--50年代中 產(chǎn)生的背景 應用需求 科學計算 硬件水平 無直接存取存儲設備 軟件水平 沒有操作系統(tǒng) 處理方式 批處理,人工管理(續(xù)),特點 數(shù)據(jù)的管理者:應用程序,數(shù)據(jù)不保存。 數(shù)據(jù)面向的對象:某一應用程序 數(shù)據(jù)的共享程度:無共享、冗余度極大 數(shù)據(jù)的獨立性:不獨立,完全依賴于程序 數(shù)據(jù)的結構化:無結構 數(shù)據(jù)控制能力:應用程序自己控制,,,應用程序與數(shù)據(jù)的對應關系(人工管理),,,二、文件系統(tǒng),時期 50年代末--60年代中 產(chǎn)生的背景 應用需求 科學計算、管理 硬件水平 磁盤、磁鼓 軟件水平 有文件系統(tǒng) 處理方式 聯(lián)機實時處理、批處理,文件系統(tǒng)(續(xù)),特點 數(shù)據(jù)的管理者:文件系統(tǒng),數(shù)據(jù)可長期保存 數(shù)據(jù)面向的對象:某一應用程序 數(shù)據(jù)的共享程度:共享性差、冗余度大 數(shù)據(jù)的結構化:記錄內有結構,整體無結構 數(shù)據(jù)的獨立性:獨立性差,數(shù)據(jù)的邏輯結構改變必須修改應用程序 數(shù)據(jù)控制能力:應用程序自己控制,,,,應用程序與數(shù)據(jù)的對應關系(文件系統(tǒng)),,文件系統(tǒng)中數(shù)據(jù)的結構,記錄內有結構。 數(shù)據(jù)的結構是靠程序定義和解釋的。 數(shù)據(jù)只能是定長的。 可以間接實現(xiàn)數(shù)據(jù)變長要求,但訪問相應數(shù)據(jù)的應用程序復雜了。 文件間是獨立的,因此數(shù)據(jù)整體無結構。 可以間接實現(xiàn)數(shù)據(jù)整體的有結構,但必須在應用程序中對描述數(shù)據(jù)間的聯(lián)系。 數(shù)據(jù)的最小存取單位是記錄。,三、數(shù)據(jù)庫系統(tǒng),時期 60年代末以來 產(chǎn)生的背景 應用背景 大規(guī)模管理 硬件背景 大容量磁盤 軟件背景 有數(shù)據(jù)庫管理系統(tǒng) 處理方式 聯(lián)機實時處理,分布處理,批處理,數(shù)據(jù)管理技術進入數(shù)據(jù)庫階段的標志是20世紀60年代末的三件大事: 1968年美國IBM公司推出層次模型的IMS系統(tǒng) 。 1969年美國CODASYL組織發(fā)布了DBTG報告,總結了當時各式各樣的數(shù)據(jù)庫,提出網(wǎng)狀模型。 1970年美國IBM公司的E.F.Codd 連續(xù)發(fā)表論文,提出關系模型,奠定了關系數(shù)據(jù)庫的理論基礎。,數(shù)據(jù)庫系統(tǒng)(續(xù)),特點 數(shù)據(jù)的管理者:DBMS 數(shù)據(jù)面向的對象:現(xiàn)實世界 數(shù)據(jù)的共享程度:共享性高 數(shù)據(jù)的獨立性:高度的物理獨立性和一定的 邏輯獨立性 數(shù)據(jù)的結構化:整體結構化 數(shù)據(jù)控制能力:由DBMS統(tǒng)一管理和控制,,,,,,,應用程序與數(shù)據(jù)的對應關系(數(shù)據(jù)庫系統(tǒng)),,數(shù)據(jù)的高共享性的好處,降低數(shù)據(jù)的冗余度,節(jié)省存儲空間 避免數(shù)據(jù)間的不一致性 使系統(tǒng)易于擴充,,數(shù)據(jù)獨立性,物理獨立性 指用戶的應用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當數(shù)據(jù)的物理存儲改變了,應用程序不用改變。 邏輯獨立性 指用戶的應用程序與數(shù)據(jù)庫的邏輯結構是相互獨立的。數(shù)據(jù)的邏輯結構改變了,用戶程序也可以不變。,,數(shù)據(jù)結構化,整體數(shù)據(jù)的結構化是數(shù)據(jù)庫的主要特征之一。 數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結構化 數(shù)據(jù)的結構用數(shù)據(jù)模型描述,無需程序定義和解釋。 數(shù)據(jù)可以變長。 數(shù)據(jù)的最小存取單位是數(shù)據(jù)項。,,DBMS對數(shù)據(jù)的控制功能,數(shù)據(jù)的安全性(Security)保護 使每個用戶只能按指定方式使用和處理指定數(shù)據(jù),保護數(shù)據(jù)以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。 數(shù)據(jù)的完整性(Integrity)檢查 將數(shù)據(jù)控制在有效的范圍內,或保證數(shù)據(jù)之間滿足一定的關系。,DBMS對數(shù)據(jù)的控制功能,并發(fā)(Concurrency)控制 對多用戶的并發(fā)操作加以控制和協(xié)調,防止相互干擾而得到錯誤的結果。 數(shù)據(jù)庫恢復(Recovery) 將數(shù)據(jù)庫從錯誤狀態(tài)恢復到某一已知的正確狀態(tài)。,,程序和數(shù)據(jù)間的聯(lián)系 文件系統(tǒng)階段信息處理的傳統(tǒng)方式,,,,,數(shù)據(jù)庫階段信息處理方式的演變,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,數(shù)據(jù)模型,在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬 數(shù)據(jù)模型應滿足三方面要求 能比較真實地模擬現(xiàn)實世界 容易為人所理解 便于在計算機上實現(xiàn),數(shù)據(jù)模型(續(xù)),數(shù)據(jù)模型分成兩個不同的層次 (1) 概念模型 也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模。 (2) 數(shù)據(jù)模型 主要包括網(wǎng)狀模型、層次模型、關系模型等,它是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模。,數(shù)據(jù)模型(續(xù)),客觀對象的抽象過程---兩步抽象 現(xiàn)實世界中的客觀對象抽象為概念模型; 把概念模型轉換為某一DBMS支持的數(shù)據(jù)模型。 概念模型是現(xiàn)實世界到機器世界的一個中間層次。,1.2 數(shù)據(jù)模型,1.2.1 數(shù)據(jù)模型的組成要素 1.2.2 概念模型 1.2.3 常用邏輯數(shù)據(jù)模型 1.2.4 層次模型 1.2.5 網(wǎng)狀模型 1.2.6 關系模型,1.2.1 數(shù)據(jù)模型的組成要素,數(shù)據(jù)結構 數(shù)據(jù)操作 數(shù)據(jù)的約束條件,1. 數(shù)據(jù)結構,什么是數(shù)據(jù)結構 對象類型的集合 兩類對象 與數(shù)據(jù)類型、內容、性質有關的對象 與數(shù)據(jù)之間聯(lián)系有關的對象 數(shù)據(jù)結構是對系統(tǒng)靜態(tài)特性的描述,2.數(shù)據(jù)操作,數(shù)據(jù)操作 對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作及有關的操作規(guī)則 數(shù)據(jù)操作的類型 檢索 更新(包括插入、刪除、修改),數(shù)據(jù)操作(續(xù)),數(shù)據(jù)模型對操作的定義 操作的確切含義 操作符號 操作規(guī)則(如優(yōu)先級) 實現(xiàn)操作的語言 數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述。,3.數(shù)據(jù)的約束條件,數(shù)據(jù)的約束條件 一組完整性規(guī)則的集合。 完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和儲存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。,數(shù)據(jù)的約束條件(續(xù)),數(shù)據(jù)模型對約束條件的定義 反映和規(guī)定本數(shù)據(jù)模型必須遵守的基本的通用的完整性約束條件。例如在關系模型中,任何關系必須滿足實體完整性和參照完整性兩個條件。 提供定義完整性約束條件的機制,以反映具體應用所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。,1.2.2 概念模型,1. 概念模型 2. 信息世界中的基本概念 3. 概念模型的表示方法,1. 概念模型,概念模型的用途 概念模型用于信息世界的建模 是現(xiàn)實世界到機器世界的一個中間層次 是數(shù)據(jù)庫設計的有力工具 數(shù)據(jù)庫設計人員和用戶之間進行交流的語言 對概念模型的基本要求 較強的語義表達能力,能夠方便、直接地表達應用中的各種語義知識 簡單、清晰、易于用戶理解。,2. 信息世界中的基本概念,(1) 實體(Entity) 客觀存在并可相互區(qū)別的事物稱為實體。 可以是具體的人、事、物或抽象的概念。 (2) 屬性(Attribute) 實體所具有的某一特性稱為屬性。 一個實體可以由若干個屬性來刻畫。 (3) 碼(Key) 唯一標識實體的屬性集稱為碼。,信息世界中的基本概念(續(xù)),(4) 域(Domain) 屬性的取值范圍稱為該屬性的域。 (5) 實體型(Entity Type) 用實體名及其屬性名集合來抽象和刻畫 同類實體稱為實體型 (6) 實體集(Entity Set) 同型實體的集合稱為實體集,信息世界中的基本概念(續(xù)),(7) 聯(lián)系(Relationship) 現(xiàn)實世界中事物內部以及事物之間的聯(lián)系在信息世界 中反映為實體內部的聯(lián)系和實體之間的聯(lián)系 實體型間聯(lián)系 兩個實體型 一對一聯(lián)系(1:1) 三個實體型 一對多聯(lián)系(1:n) 一個實體型 多對多聯(lián)系(m:n),,,兩個實體型間的聯(lián)系,數(shù)據(jù)聯(lián)系的描述,,,,,,,,,,,圖1.10 多對多聯(lián)系,兩個實體型間的聯(lián)系,一對一聯(lián)系 如果對于實體集A中的每一個實體,實體集B中至多有一個實體與之聯(lián)系,反之亦然,則稱實體集A與實體集B具有一對一聯(lián)系。記為1:1。 實例 班級與班長之間的聯(lián)系: 一個班級只有一個正班長 一個班長只在一個班中任職,,兩個實體型間的聯(lián)系 (續(xù)),一對多聯(lián)系 如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中至多只有一個實體與之聯(lián)系,則稱實體集A與實體集B有一對多聯(lián)系 記為1:n 實例 班級與學生之間的聯(lián)系: 一個班級中有若干名學生, 每個學生只在一個班級中學習,,兩個實體型間的聯(lián)系 (續(xù)),多對多聯(lián)系(m:n) 如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中也有m個實體(m≥0)與之聯(lián)系,則稱實體集A與實體B具有多對多聯(lián)系。記為m:n 實例 課程與學生之間的聯(lián)系: 一門課程同時有若干個學生選修 一個學生可以同時選修多門課程,,多個實體型間的聯(lián)系(續(xù)),多個實體型間的一對多聯(lián)系 若實體集E1,E2,.,En存在聯(lián)系,對于實體集Ej(j=1,2,.,i-1,i+1,.,n)中的給定實體,最多只和Ei中的一個實體相聯(lián)系,則我們說Ei與E1,E2,.,Ei-1,Ei+1,.,En之間的聯(lián)系是一對多的。,多個實體型間的聯(lián)系(續(xù)),實例 課程、教師與參考書三個實體型 如果一門課程可以有若干個教師講授,使用若干 本參考書,每一個教師只講授一門課程,每一本 參考書只供一門課程使用 課程與教師、參考書之間的聯(lián)系是一對多的 多個實體型間的一對一聯(lián)系 多個實體型間的多對多聯(lián)系,,同一實體集內各實體間的聯(lián)系,一對多聯(lián)系 實例 職工實體集內部具有領導與被領導的聯(lián)系 某一職工(干部)“領導”若干名職工 一個職工僅被另外一個職工直接領導 這是一對多的聯(lián)系 一對一聯(lián)系 多對多聯(lián)系,,三元聯(lián)系,一元聯(lián)系,3. 概念模型的表示方法,概念模型的表示方法很多 實體-聯(lián)系方法(E-R方法) 用E-R圖來描述現(xiàn)實世界的概念模型 E-R方法也稱為E-R模型,E-R圖,實體型 用矩形表示,矩形框內寫明實體名。,學生,教師,E-R圖(續(xù)),屬性 用橢圓形表示,并用無向邊將其與相應的實體連接起來,E-R圖(續(xù)),聯(lián)系 聯(lián)系本身:用菱形表示,菱形框內寫明聯(lián)系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系的類型(1:1、1:n或m:n) 聯(lián)系的屬性:聯(lián)系本身也是一種實體型,也可以有屬性。如果一個聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來,,,,聯(lián)系的表示方法,,聯(lián)系的表示方法(續(xù)),聯(lián)系的表示方法示例,,,,聯(lián)系的表示方法示例(續(xù)),,,,聯(lián)系屬性的表示方法,,實體聯(lián)系模型(實例),為倉庫管理設計一個ER模型。倉庫主要管理零件的采購和供應等事項。倉庫根據(jù)需要向外面供應商訂購零件,而許多工程項目需要倉庫提供零件。,,首先確定實體類型。本問題有三個實體類型:零件PART,工程項目PROJECT,零件供應商SUPPLIER。 確定聯(lián)系類型。PROJECT和PART之間是M:N聯(lián)系,PART和SUPPLIER之間也是M:N聯(lián)系,分別命名為P_P和P_S. 把實體類型和聯(lián)系類型組合成ER圖。 確定實體類型和聯(lián)系類型的屬性。 確定實體類型的鍵,在ER圖中屬于碼的屬性名下畫一條橫線。,,,圖1.14 ER圖實例,,1.2.3 常用數(shù)據(jù)模型,非關系模型 層次模型(Hierarchical Model) 網(wǎng)狀模型(Network Model ) 數(shù)據(jù)結構:以基本層次聯(lián)系為基本單位 基本層次聯(lián)系:兩個記錄以及它們之間的一對多(包括一對一)的聯(lián)系,常用數(shù)據(jù)模型(續(xù)),關系模型(Relational Model) 數(shù)據(jù)結構:表 面向對象模型(Object Oriented Model) 數(shù)據(jù)結構:對象,1.2 數(shù)據(jù)模型,1.2.1 數(shù)據(jù)模型的組成要素 1.2.2 概念模型 1.2.3 常用數(shù)據(jù)模型 1.2.4 層次模型 1.2.5 網(wǎng)狀模型 1.2.6 關系模型,1.2.4 層次模型,1. 層次數(shù)據(jù)模型的數(shù)據(jù)結構 2. 層次數(shù)據(jù)模型的數(shù)據(jù)操縱 3. 層次數(shù)據(jù)模型的與完整性約束 4. 層次數(shù)據(jù)模型的存儲結構 5. 層次數(shù)據(jù)模型的優(yōu)缺點 6. 典型的層次數(shù)據(jù)庫系統(tǒng),1. 層次數(shù)據(jù)模型的數(shù)據(jù)結構,層次模型 滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型。 1. 有且只有一個結點沒有雙親結點,這個結點稱為根 結點 2. 根以外的其它結點有且只有一個雙親結點 層次模型中的幾個術語 根結點,雙親結點,兄弟結點,葉結點,層次數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),,層次數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),表示方法 實體型:用記錄類型描述。 每個結點表示一個記錄類型。 屬性:用字段描述。每個記錄類型可包含若干個字段。 聯(lián)系:用結點之間的連線表示記錄(類)型之間的 一對多的聯(lián)系 實例:教員-學生數(shù)據(jù)模型(P23),層次數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),特點 結點的雙親是唯一的 只能直接處理一對多的實體聯(lián)系 每個記錄類型定義一個排序字段,也稱為碼字段 任何記錄值只有按其路徑查看時,才能顯出它的全部意義 沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在,層次數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),多對多聯(lián)系在層次模型中的表示 用層次模型間接表示多對多聯(lián)系 方法 將多對多聯(lián)系分解成一對多聯(lián)系 分解方法 冗余結點法 虛擬結點法,2. 層次模型的數(shù)據(jù)操縱,查詢 插入 刪除 更新,3. 層次模型的完整性約束,無相應的雙親結點值就不能插入子女結點值 如果刪除雙親結點值,則相應的子女結點值也被同時刪除 更新操作時,應更新所有相應記錄,以保證數(shù)據(jù)的一致性,4.層次數(shù)據(jù)模型的存儲結構,鄰接法 按照層次樹前序遍歷的順序把所有記錄值依次鄰接存 放,即通過物理空間的位置相鄰來實現(xiàn)層次順序 鏈接法 用指引元來反映數(shù)據(jù)之間的層次聯(lián)系 子女-兄弟鏈接法 P26 層次序列鏈接法 P26,5. 層次模型的優(yōu)缺點,優(yōu)點 層次數(shù)據(jù)模型簡單,對具有一對多的層次關系的部門描述自然、直觀,容易理解 性能優(yōu)于關系模型,不低于網(wǎng)狀模型 層次數(shù)據(jù)模型提供了良好的完整性支持 缺點 多對多聯(lián)系表示不自然 對插入和刪除操作的限制多 查詢子女結點必須通過雙親結點 層次命令趨于程序化,6. 典型的層次數(shù)據(jù)庫系統(tǒng),IMS數(shù)據(jù)庫管理系統(tǒng) 第一個大型商用DBMS 1968年推出 IBM公司研制,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,1.2 數(shù)據(jù)模型,1.2.1 概念模型 1.2.2 數(shù)據(jù)模型的組成要素 1.2.3 最常用的數(shù)據(jù)模型 1.2.4 層次模型 1.2.5 網(wǎng)狀模型 1.2.6 關系模型,1.2.5 網(wǎng)狀模型,1. 網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構 2. 網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)操縱 3. 網(wǎng)狀數(shù)據(jù)模型的完整性約束 4. 網(wǎng)狀數(shù)據(jù)模型的存儲結構 5. 網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點 6. 典型的網(wǎng)狀數(shù)據(jù)庫系統(tǒng),1.網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構,網(wǎng)狀模型 滿足下面兩個條件的基本層次聯(lián)系的集合為網(wǎng)狀模型。 1. 允許一個以上的結點無雙親; 2. 一個結點可以有多于一個的雙親。,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構,,,,,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),表示方法(與層次數(shù)據(jù)模型相同) 實體型:用記錄類型描述。 每個結點表示一個記錄類型。 屬性:用字段描述。 每個記錄類型可包含若干個字段。 聯(lián)系:用結點之間的連線表示記錄(類)型之 間的一對多的父子聯(lián)系。,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),特點 只能直接處理一對多的實體聯(lián)系 每個記錄類型定義一個排序字段,也稱為碼字段 任何記錄值只有按其路徑查看時,才能顯出它的全部意義,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),網(wǎng)狀模型與層次模型的區(qū)別 網(wǎng)狀模型允許多個結點沒有雙親結點 網(wǎng)狀模型允許結點有多個雙親結點 網(wǎng)狀模型允許兩個結點之間有多種聯(lián)系(復合聯(lián)系) 網(wǎng)狀模型可以更直接地去描述現(xiàn)實世界 層次模型實際上是網(wǎng)狀模型的一個特例,,,,,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),,,,,,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),,,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),多對多聯(lián)系在網(wǎng)狀模型中的表示 用網(wǎng)狀模型間接表示多對多聯(lián)系 方法 將多對多聯(lián)系直接分解成一對多聯(lián)系,2. 網(wǎng)狀模型的數(shù)據(jù)操縱,查詢 插入 刪除 更新,3.網(wǎng)狀數(shù)據(jù)模型的完整性約束,網(wǎng)狀數(shù)據(jù)庫系統(tǒng)(如DBTG)對數(shù)據(jù)操縱加 了一些限制,提供了一定的完整性約束 碼 雙親結點與子女結點之間是一對多聯(lián)系 屬籍類別 加入類別(自動的,手工的) 移出類別(固定的,必須 的,隨意的),3. 網(wǎng)狀數(shù)據(jù)模型的完整性約束,完整性約束條件 允許插入尚未確定雙親結點值的子女結點值 允許只刪除雙親結點值,4.網(wǎng)狀數(shù)據(jù)模型的存儲結構,關鍵 實現(xiàn)記錄之間的聯(lián)系 常用方法 單向鏈接 雙向鏈接 環(huán)狀鏈接 向首鏈接 例:P29,5.網(wǎng)狀模型的優(yōu)缺點,優(yōu)點 能夠更為直接地描述現(xiàn)實世界,如一個結點可以有多個雙親 具有良好的性能,存取效率較高 缺點 結構比較復雜,而且隨著應用環(huán)境的擴大,數(shù)據(jù)庫的結構就變得越來越復雜,不利于最終用戶掌握 DDL、DML語言復雜,用戶不容易使用,6. 典型的網(wǎng)狀數(shù)據(jù)庫系統(tǒng),DBTG系統(tǒng),亦稱CODASYL系統(tǒng) 由DBTG提出的一個系統(tǒng)方案 奠定了數(shù)據(jù)庫系統(tǒng)的基本概念、方法和技術 70年代推出 實際系統(tǒng) Cullinet Software Inc.公司的 IDMS Univac公司的 DMS1100 Honeywell公司的IDS/2 HP公司的IMAGE,1.2 數(shù)據(jù)模型,1.2.1 概念模型 1.2.2 數(shù)據(jù)模型的組成要素 1.2.3 最常用的數(shù)據(jù)模型 1.2.4 層次模型 1.2.5 網(wǎng)狀模型 1.2.6 關系模型,1.2.6 關系模型,1. 關系數(shù)據(jù)模型的數(shù)據(jù)結構 2. 關系數(shù)據(jù)模型的操縱 3. 關系數(shù)據(jù)模型的完整性約束 4. 關系數(shù)據(jù)模型的存儲結構 5. 關系數(shù)據(jù)模型的優(yōu)缺點 6. 典型的關系數(shù)據(jù)庫系統(tǒng),關系模型,最重要的一種數(shù)據(jù)模型。也是目前主要采用的數(shù)據(jù)模型 1970年由美國IBM公司San Jose研究室的研究員E.F.Codd提出 本課程的重點,關系數(shù)據(jù)模型的數(shù)據(jù)結構,在用戶觀點下,關系模型中數(shù)據(jù)的邏輯結構是一張二維表,它由行和列組成。,關系模型的基本概念,關系(Relation) 一個關系對應通常說的一張表。 元組(Tuple) 表中的一行即為一個元組。 屬性(Attribute) 表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名。,關系模型的基本概念,主碼(Key) 表中的某個屬性組,它可以唯一確定一個元組。 域(Domain) 屬性的取值范圍。 分量 元組中的一個屬性值。 關系模式 對關系的描述 關系名(屬性1,屬性2,…,屬性n) 學生(學號,姓名,年齡,性別,系,年級),關系數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),實體及實體間的聯(lián)系的表示方法 實體型:直接用關系(表)表示。 屬性:用屬性名表示。 一對一聯(lián)系:隱含在實體對應的關系中。 一對多聯(lián)系:隱含在實體對應的關系中。 多對多聯(lián)系:直接用關系表示。,關系數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),例1 學生、系、系與學生之間的一對多聯(lián)系: 學生(學號,姓名,年齡,性別,系號,年級) 系 (系號,系名,辦公地點) 例2 系、系主任、系與系主任間的一對一聯(lián)系,關系數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),例3 學生、課程、學生與課程之間的多對多聯(lián)系: 學生(學號,姓名,年齡,性別,系號,年級) 課程(課程號,課程名,學分) 選修(學號,課程號,成績),關系數(shù)據(jù)模型的數(shù)據(jù)結構(續(xù)),關系必須是規(guī)范化的,滿足一定的規(guī)范條件 最基本的規(guī)范條件:關系的每一個分量必須是一個不 可分的數(shù)據(jù)項。,2.關系模型的數(shù)據(jù)操縱,查詢、插入、刪除、更新 數(shù)據(jù)操作是集合操作,操作對象和操作結果都是關系,即若干元組的集合 存取路徑對用戶隱蔽,用戶只要指出“干什么”,不必詳細說明“怎么干”,3.關系模型的完整性約束,實體完整性 參照完整性 用戶定義的完整性,4.關系數(shù)據(jù)模型的存儲結構,表以文件形式存儲 有的DBMS一個表對應一個操作系統(tǒng)文件 有的DBMS自己設計文件結構,,,圖 關系模型的例子,PART模式 (P#,PNAME,COLOR,WEIGHT) PROJECT模式 (J#,JNAME,DATE) SUPPLIER模式 (S#,SNAME,SADDR) P_P模式 (J#,P#,TOTAL) P_S模式 (P#,S#,QUANTITY),,100,S2,P4,BEIJING,FADC,S2,300,S2,P3,SHANGHAI,PICC,S1,150,S1,P2,SADDR,SNAME,S#,200,S2,P2,SUPPLIER,關系,100,S1,P1,91,-,3,JC,J3,QUANTITY,S#,P#,90.5,JB,J2,P_S,關系,89.1,JA,J1,18,P3,J1,DATE,JNAME,J#,25,P3,J2,PROJECT,關系,65,P2,J1,19,RED,SCREW,P4,6,P3,J3,12,RED,NUT,P3,15,P2,J2,17,GREEN,BOLT,P2,50,P1,J1,14,BLUE,SCREW,P1,TOTAL,P#,J#,WEIGHT,COLOR,PNAME,P#,P_P,關系,PART,關系,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,100,S2,P4,BEIJING,FADC,S2,300,S2,P3,SHANGHAI,PICC,S1,150,S1,P2,SADDR,SNAME,S#,200,S2,P2,SUPPLIER,關系,100,S1,P1,91,-,3,JC,J3,QUANTITY,S#,P#,90.5,JB,J2,P_S,關系,89.1,JA,J1,18,P3,J1,DATE,JNAME,J#,25,P3,J2,PROJECT,關系,65,P2,J1,19,RED,SCREW,P4,6,P3,J3,12,RED,NUT,P3,15,P2,J2,17,GREEN,BOLT,P2,50,P1,J1,14,BLUE,SCREW,P1,TOTAL,P#,J#,WEIGHT,COLOR,PNAME,P#,P_P,關系,PART,關系,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,5.關系模型的優(yōu)缺點,優(yōu)點 建立在嚴格的數(shù)學概念的基礎上 概念單一。數(shù)據(jù)結構簡單、清晰,用戶易懂易用 實體和各類聯(lián)系都用關系來表示。 對數(shù)據(jù)的檢索結果也是關系。 關系模型的存取路徑對用戶透明 具有更高的數(shù)據(jù)獨立性,更好的安全保密性 簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作,關系模型的優(yōu)缺點(續(xù)),缺點 存取路徑對用戶透明導致查詢效率往往不如非 關系數(shù)據(jù)模型 為提高性能,必須對用戶的查詢請求進行優(yōu)化 增加了開發(fā)數(shù)據(jù)庫管理系統(tǒng)的難度,6. 典型的關系數(shù)據(jù)庫系統(tǒng),ORACLE SYBASE INFORMIX DB/2 COBASE PBASE EasyBase DM/2 OpenBase,對象模型,對象(object)是現(xiàn)實世界中實體的模型化,與實體概念相仿,但遠比實體復雜。 將屬性集和方法集相同的所有對象組合在一起,構成了一個類(class)。,,圖 四種邏輯數(shù)據(jù)模型的比較,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,1.3 數(shù)據(jù)庫系統(tǒng)結構,1.3.1數(shù)據(jù)庫系統(tǒng)內部的模式結構 從數(shù)據(jù)庫管理系統(tǒng)角度看 1.3.2數(shù)據(jù)庫系統(tǒng)外部的體系結構 從數(shù)據(jù)庫最終用戶角度看,1.3.1 數(shù)據(jù)庫系統(tǒng)的模式結構,數(shù)據(jù)庫系統(tǒng)模式的概念 數(shù)據(jù)庫系統(tǒng)的三級模式結構 數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)獨立性 小結,數(shù)據(jù)庫系統(tǒng)模式的概念,“型” 和“值” 的概念 型(Type) 對某一類數(shù)據(jù)的結構和屬性的說明 值(Value) 是型的一個具體賦值 例如:學生記錄 記錄型: (學號,姓名,性別,系別,年齡,籍貫) 該記錄型的一個記錄值: (900201,李明,男,計算機,22,江蘇),數(shù)據(jù)庫系統(tǒng)模式的概念(續(xù)),模式(Schema)-型 數(shù)據(jù)庫邏輯結構和特征的描述 是型的描述 反映的是數(shù)據(jù)的結構及其聯(lián)系 模式是相對穩(wěn)定的 模式的一個實例(Instance)-值 模式的一個具體值 反映數(shù)據(jù)庫某一時刻的狀態(tài) 同一個模式可以有很多實例 實例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動,1.3.1 數(shù)據(jù)庫系統(tǒng)的模式結構,數(shù)據(jù)庫系統(tǒng)模式的概念 數(shù)據(jù)庫系統(tǒng)的三級模式結構 數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)獨立性 小結,數(shù)據(jù)庫系統(tǒng)的三級模式結構,講解,1、何為模式、外模式、內模式? 2、處在什么樣的地位? 3、他有什么樣的作用? 4、什么描述語言?,1.模式(Schema),模式(也稱邏輯模式) 數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述 所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求 一個數(shù)據(jù)庫只有一個模式 模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結構的中間層 與數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境無關 與具體的應用程序、開發(fā)工具及高級程序設計語言無關,,模式的定義-內容 數(shù)據(jù)的邏輯結構(數(shù)據(jù)項的名字、類型、取值范圍等) 數(shù)據(jù)之間的聯(lián)系 數(shù)據(jù)有關的安全性、完整性要求 模式描述語言(模式DDL),2. 外模式(External Schema),外模式(也稱子模式或用戶模式) 數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)使用的局部數(shù)據(jù)的邏輯結構和特征的描述 數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應用有關的數(shù)據(jù)的邏輯表示,外模式(續(xù)),外模式的地位:介于模式與應用之間 模式與外模式的關系:一對多 外模式通常是模式的子集 一個數(shù)據(jù)庫可以有多個外模式。反映了不同的用戶的應用需求、看待數(shù)據(jù)的方式、對數(shù)據(jù)保密的要求。 對模式中同一數(shù)據(jù),在外模式中的結構、類型、長度、保密級別等都可以不同,,外模式與應用的關系:一對多 同一外模式也可以為某一用戶的多個應用系統(tǒng)所使用, 但一個應用程序只能使用一個外模式。,外模式(續(xù)),外模式的用途 保證數(shù)據(jù)庫安全性的一個有力措施。 每個用戶只能看見和訪問所對應的外模式中的數(shù)據(jù) 子模式描述語言(子模式DDL),3.內模式(Internal Schema),內模式(也稱存儲模式) 是數(shù)據(jù)物理結構和存儲方式的描述 是數(shù)據(jù)在數(shù)據(jù)庫內部的表示方式 記錄的存儲方式(順序存儲,按照B樹結構存儲,按hash方法存儲) 索引的組織方式 數(shù)據(jù)是否壓縮存儲 數(shù)據(jù)是否加密 數(shù)據(jù)存儲記錄結構的規(guī)定 一個數(shù)據(jù)庫只有一個內模式,,注意:內部記錄并不涉及到物理設備的約束。比內模式更接近物理存儲和訪問的那些軟件機制是操作系統(tǒng)的一部分(文件系統(tǒng)),例如從磁盤讀數(shù)據(jù)或寫數(shù)據(jù)到磁盤上的操作等。 內模式描述語言(內模式DDL、存儲DDL),,數(shù)據(jù)按外模式的描述提供給用戶, 按內模式的描述存儲在磁盤中, 而模式提供了連接這兩級的相對穩(wěn)定的中間觀點,并使得兩級中任何一級的改變不受另一級的牽制。,1.3.1 數(shù)據(jù)庫系統(tǒng)的模式結構,數(shù)據(jù)庫系統(tǒng)模式的概念 數(shù)據(jù)庫系統(tǒng)的三級模式結構 數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)獨立性 小結,三級模式與二級映象,三級模式是對數(shù)據(jù)的三個抽象級別 二級映象在DBMS內部實現(xiàn)這三個抽象層次的聯(lián)系和轉換 數(shù)據(jù)獨立性:是指應用程序和數(shù)據(jù)庫的數(shù)據(jù)結構之間相互獨立,不受影響。 數(shù)據(jù)獨立性 物理數(shù)據(jù)獨立性 邏輯數(shù)據(jù)獨立性,,數(shù)據(jù)庫系統(tǒng)的三級模式結構,1.外模式/模式映象,1、定義外模式與模式之間的對應關系 2、每一個外模式都對應一個外模式/模式映象 3、映象定義通常包含在各自外模式的描述中,外模式/模式映象的用途,4、保證數(shù)據(jù)的邏輯獨立性 當模式改變時,數(shù)據(jù)庫管理員修改有關的外模式/模式映象,使外模式保持不變 應用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性。,數(shù)據(jù)庫系統(tǒng)的三級模式結構,,,,,2.模式/內模式映象,模式/內模式映象定義了數(shù)據(jù)全局邏輯結構與存儲結構之間的對應關系。例如,說明邏輯記錄和字段在內部是如何表示的 數(shù)據(jù)庫中模式/內模式映象是唯一的 該映象定義通常包含在模式描述中,模式/內模式映象的用途,保證數(shù)據(jù)的物理獨立性 當數(shù)據(jù)庫的存儲結構改變了(例如選用了另一種存儲結構),數(shù)據(jù)庫管理員修改模式/內模式映象,使模式保持不變 應用程序不受影響。保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)據(jù)的物理獨立性。,數(shù)據(jù)庫系統(tǒng)的三級模式結構,,,,,數(shù)據(jù)庫的三級體系結構,,,1.3.1 數(shù)據(jù)庫系統(tǒng)的模式結構,數(shù)據(jù)庫系統(tǒng)模式的概念 數(shù)據(jù)庫系統(tǒng)的三級模式結構 數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)獨立性 小結,小結,模式 是數(shù)據(jù)庫的中心與關鍵 獨立于數(shù)據(jù)庫的其它層次 設計數(shù)據(jù)庫模式結構時應首先確定數(shù)據(jù)庫的邏輯模式,小結(續(xù)),內模式 依賴于全局邏輯結構,但獨立于數(shù)據(jù)庫的用戶視圖即外模式,也獨立于具體的存儲設備。 它將全局邏輯結構中所定義的數(shù)據(jù)結構及其聯(lián)系按照一定的物理存儲策略進行組織,以達到較好的時間與空間效率。,小結(續(xù)),外模式 面向具體的應用程序,定義在邏輯模式之上,但獨立于存儲模式和存儲設備 設計外模式時應充分考慮到應用的擴充性。當應用需求發(fā)生較大變化,相應外模式不能滿足其視圖要求時,該外模式就得做相應改動,小結(續(xù)),應用程序 在外模式描述的數(shù)據(jù)結構上編制的,它依賴于特定的外模式,與數(shù)據(jù)庫的模式和存儲結構獨立。 不同的應用程序有時可以共用同一個外模式。,小結(續(xù)),二級映象 保證了數(shù)據(jù)庫外模式的穩(wěn)定性,從而從底層保證了應用程序的穩(wěn)定性,除非應用需求本身發(fā)生變化,否則應用程序一般不需要修改。 數(shù)據(jù)與程序之間的獨立性,使得數(shù)據(jù)的定義和描述可以從應用程序中分離出去。,1.3 數(shù)據(jù)庫系統(tǒng)結構,1.3.1數(shù)據(jù)庫系統(tǒng)內部的模式結構 從數(shù)據(jù)庫管理系統(tǒng)角度看 1.3.2數(shù)據(jù)庫系統(tǒng)外部的體系結構 從數(shù)據(jù)庫最終用戶角度看,1.3.2 數(shù)據(jù)庫系統(tǒng)外部的體系結構,單用戶結構 主從式結構 分布式結構 客戶/服務器結構,1. 單用戶數(shù)據(jù)庫系統(tǒng),整個數(shù)據(jù)庫系統(tǒng)(應用程序、DBMS、數(shù)據(jù))裝在一臺計算機上,為一個用戶獨占,不同機器之間不能共享數(shù)據(jù)。 早期的最簡單的數(shù)據(jù)庫系統(tǒng),2. 主從式結構的數(shù)據(jù)庫系統(tǒng),一個主機帶多個終端的多用戶結構 數(shù)據(jù)庫系統(tǒng),包括應用程序、DBMS、數(shù)據(jù),都集中存放在主機上,所有處理任務都由 主機來完成 各個用戶通過主機的終端并發(fā)地存取數(shù)據(jù)庫,共享數(shù)據(jù)資源,主從式結構的數(shù)據(jù)庫系統(tǒng),主機,終端,,,,,,主從式結構的數(shù)據(jù)庫系統(tǒng)(續(xù)),優(yōu)點 易于管理、控制與維護。 缺點 當終端用戶數(shù)目增加到一定程度后,主機的任務會過分繁重,成為瓶頸,從而使系統(tǒng)性能下降。 系統(tǒng)的可靠性依賴主機,當主機出現(xiàn)故障時,整個系統(tǒng)都不能使用。,3. 分布式結構的數(shù)據(jù)庫系統(tǒng),數(shù)據(jù)庫中的數(shù)據(jù)在邏輯上是一個整體,但物理地分布在計算機網(wǎng)絡的不同結點上。 網(wǎng)絡中的每個結點都可以獨立處理本地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行局部應用 同時也可以同時存取和處理多個異地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行全局應用,,,分布式結構的數(shù)據(jù)庫系統(tǒng)(續(xù)),優(yōu)點 適應了地理上分散的公司、團體和組織對于數(shù)據(jù)庫應用的需求。 缺點 數(shù)據(jù)的分布存放給數(shù)據(jù)的處理、管理與維護帶來困難。 當用戶需要經(jīng)常訪問遠程數(shù)據(jù)時,系統(tǒng)效率會明顯地受到網(wǎng)絡傳輸?shù)闹萍s。,4.客戶/服務器結構的數(shù)據(jù)庫系統(tǒng),把DBMS功能和應用分開 網(wǎng)絡中某個(些)結點上的計算機專門用于執(zhí)行DBMS功能,稱為數(shù)據(jù)庫服務器,簡稱服務器 其他結點上的計算機安裝DBMS的外圍應用開發(fā)工具,用戶的應用系統(tǒng),稱為客戶機,客戶/服務器數(shù)據(jù)庫系統(tǒng)的種類,集中的服務器結構 一臺數(shù)據(jù)庫服務器,多臺客戶機 分布的服務器結構 在網(wǎng)絡中有多臺數(shù)據(jù)庫服務器 分布的服務器結構是客戶/服務器與 分布式數(shù)據(jù)庫的結合,客戶/服務器結構的優(yōu)點,客戶端的用戶請求被傳送到數(shù)據(jù)庫服務器,數(shù)據(jù)庫服務器進行處理后,只將結果返回給用戶,從而顯著減少了數(shù)據(jù)傳輸量 數(shù)據(jù)庫更加開放 客戶與服務器一般都能在多種不同的硬件和軟件平臺上運行 可以使用不同廠商的數(shù)據(jù)庫應用開發(fā)工具,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,1.4 數(shù)據(jù)庫系統(tǒng)的組成,數(shù)據(jù)庫-倉庫 數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)-管理制度、運行規(guī)則 應用系統(tǒng)-使用倉庫的公司 數(shù)據(jù)庫管理員-倉庫管理員 (用戶)-使用倉庫的公司的人員,一、硬件平臺及數(shù)據(jù)庫,數(shù)據(jù)庫系統(tǒng)對硬件資源的要求 (1) 足夠大的內存-運行 操作系統(tǒng) DBMS的核心模塊 數(shù)據(jù)緩沖區(qū) 應用程序,數(shù)據(jù)庫系統(tǒng)對硬件資源的要求,(2) 足夠大的外存-存儲 磁盤 操作系統(tǒng) DBMS 應用程序 數(shù)據(jù)庫及其備份 光盤、磁帶、軟盤 數(shù)據(jù)備份 (3) 較高的通道能力,提高數(shù)據(jù)傳送率-傳輸,二、軟件,DBMS 操作系統(tǒng) 與數(shù)據(jù)庫接口的高級語言及其編譯系統(tǒng) 以DBMS為核心的應用開發(fā)工具 為特定應用環(huán)境開發(fā)的數(shù)據(jù)庫應用系統(tǒng),三、人員,數(shù)據(jù)庫管理員-運行中的管理人員 系統(tǒng)分析員 數(shù)據(jù)庫設計人員 開發(fā)人員 應用程序員 (最終用戶),,1. 數(shù)據(jù)庫管理員(DBA),決定數(shù)據(jù)庫中的信息內容和結構 決定數(shù)據(jù)庫的存儲結構和存取策略 定義數(shù)據(jù)的安全性要求和完整性約束條件,數(shù)據(jù)庫管理員(續(xù)),監(jiān)控數(shù)據(jù)庫的使用和運行 周期性轉儲數(shù)據(jù)庫 數(shù)據(jù)文件 日志文件 系統(tǒng)故障恢復 介質故障恢復 監(jiān)視審計文件,數(shù)據(jù)庫管理員(續(xù)),數(shù)據(jù)庫的改進和重組 性能監(jiān)控和調優(yōu) 數(shù)據(jù)重組 數(shù)據(jù)庫重構,2. 系統(tǒng)分析員,負責應用系統(tǒng)的需求分析和規(guī)范說明 與用戶及DBA(數(shù)據(jù)庫管理員)協(xié)商,確定系統(tǒng)的硬軟件配置 參與數(shù)據(jù)庫系統(tǒng)的概要設計,3. 數(shù)據(jù)庫設計人員,參加用戶需求調查和系統(tǒng)分析 確定數(shù)據(jù)庫中的數(shù)據(jù) 設計數(shù)據(jù)庫各級模式,4. 應用程序員,設計和編寫應用系統(tǒng)的程序模塊 進行調試和安裝,5. 用戶,偶然用戶 企業(yè)或組織機構的高中級管理人員 簡單用戶 銀行的職員、機票預定人員、旅館總臺服務員,用戶(續(xù)),復雜用戶 工程師、科學家、經(jīng)濟學家、科技工作者等 直接使用數(shù)據(jù)庫語言訪問數(shù)據(jù)庫,甚至能夠基于數(shù)據(jù)庫管理系統(tǒng)的API編制自己的應用程序,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,1.5 數(shù)據(jù)庫技術的研究領域,數(shù)據(jù)庫管理系統(tǒng)軟件的研制 數(shù)據(jù)庫設計--我們的應用重點 數(shù)據(jù)庫理論--需要掌握的知識,數(shù)據(jù)庫管理系統(tǒng)軟件的研制,DBMS核心 一組相互聯(lián)系的軟件系統(tǒng) 工具軟件 中間件,數(shù)據(jù)庫設計,數(shù)據(jù)庫設計方法 設計工具 設計理論 數(shù)據(jù)模型和數(shù)據(jù)建模,數(shù)據(jù)庫理論,關系的規(guī)范化理論 關系數(shù)據(jù)理論,第一章 緒論,1.1 數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型 1.3 數(shù)據(jù)庫系統(tǒng)結構 1.4 數(shù)據(jù)庫系統(tǒng)的組成 1.5 數(shù)據(jù)庫技術的研究領域 1.6 小結,小結,數(shù)據(jù)庫系統(tǒng)概述 數(shù)據(jù)庫的基本概念 數(shù)據(jù)管理的發(fā)展過程 數(shù)據(jù)模型 數(shù)據(jù)模型的三要素 概念模型, E-R 模型 三種主要數(shù)據(jù)模型,小結(續(xù)),數(shù)據(jù)庫系統(tǒng)的結構 數(shù)據(jù)庫系統(tǒng)三級模式結構 數(shù)據(jù)庫系統(tǒng)的體系結構 數(shù)據(jù)庫系統(tǒng)的組成,作業(yè),教材習題P41: 第12題 第13題 參考教材P19-20的例子,216,問答時間,Q & A 謝謝,,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 計算機技術 基礎 語言 引言
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://m.italysoccerbets.com/p-2883918.html