第1講數(shù)據(jù)庫技術基礎-準備知識新課件_第1頁
第1講數(shù)據(jù)庫技術基礎-準備知識新課件_第2頁
第1講數(shù)據(jù)庫技術基礎-準備知識新課件_第3頁
第1講數(shù)據(jù)庫技術基礎-準備知識新課件_第4頁
第1講數(shù)據(jù)庫技術基礎-準備知識新課件_第5頁
已閱讀5頁,還剩183頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

SQLserver2005數(shù)據(jù)庫應用與開發(fā)教程SQLserver2005數(shù)據(jù)庫應用與開發(fā)教程教材SQLServer2008數(shù)據(jù)庫技術實用教程,清華大學出版社,高云主編參考書SQLServer2008數(shù)據(jù)庫應用與開發(fā)教程,清華大學出版社,衛(wèi)琳主編數(shù)據(jù)庫應用技術(SQLServer2005),中國鐵道出版社,申時凱李海雁主編數(shù)據(jù)庫應用技術(SQLServer2005),人民郵電出版社,周慧主編教材授課環(huán)節(jié)教學:32學時實驗:32學時考核:平時10%,實驗20%,期末考試70%答疑郵箱:zhoushaoke@126.com授課環(huán)節(jié)要求掌握數(shù)據(jù)庫的基本理論熟練操縱SQLServer數(shù)據(jù)庫了解相關的數(shù)據(jù)庫開發(fā)工具能夠開發(fā)出一個小型的基于SQLServer的信息管理系統(tǒng)要求第一講數(shù)據(jù)庫技術基礎——準備知識1.1數(shù)據(jù)庫基礎知識

1.2關系數(shù)據(jù)庫

1.3數(shù)據(jù)庫設計第一講數(shù)據(jù)庫技術基礎——準備知識1.1數(shù)據(jù)庫基礎知識

1能力目標:認識數(shù)據(jù)庫系統(tǒng)的組成和C/S、B/S結構。認識各種數(shù)據(jù)庫管理系統(tǒng)、開發(fā)工具及其特點。明確與數(shù)據(jù)庫技術相關的職業(yè)技術崗位。能夠根據(jù)項目需求分析報告進行數(shù)據(jù)庫的概念模型設計。通過項目需求分析,培養(yǎng)與客戶溝通的能力。

任務設計:閱讀管理信息系統(tǒng)的項目需求分析報告。根據(jù)項目需求分析建立概念(E-R)數(shù)據(jù)模型。能力目標:知識要求:數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展。數(shù)據(jù)庫系統(tǒng)概述。數(shù)據(jù)庫三級模式結構的重要概念。DBMS的主要功能。數(shù)據(jù)模型概述。數(shù)據(jù)庫概念設計。知識要求:為何要學習數(shù)據(jù)庫?數(shù)據(jù)庫服務器響應和提供數(shù)據(jù)應用程序數(shù)據(jù)庫操作和查詢?yōu)楹我獙W習數(shù)據(jù)庫?數(shù)據(jù)庫服務器響應和提供數(shù)據(jù)應用程序數(shù)據(jù)庫操數(shù)據(jù)庫作用:要求:應用程序作用:要求:數(shù)據(jù)庫能夠做什么?存儲數(shù)據(jù)、檢索數(shù)據(jù)、生成新的數(shù)據(jù)統(tǒng)一、安全、性能等響應操作并顯示結果、向數(shù)據(jù)庫請求數(shù)據(jù)美觀、操作簡單方便數(shù)據(jù)庫數(shù)據(jù)庫能夠做什么?存儲數(shù)據(jù)、檢索數(shù)據(jù)、生成新的數(shù)據(jù)統(tǒng)一存儲數(shù)據(jù)的方法第一種方法:用大腦來記住數(shù)據(jù)第二種方法:寫在紙上第三種方法:寫在計算機的內(nèi)存中第四種方法:寫成磁盤文件……存儲數(shù)據(jù)的方法存儲大量數(shù)據(jù),方便檢索和訪問保持數(shù)據(jù)信息的一致、完整共享和安全通過組合分析,產(chǎn)生新的有用信息存儲大量數(shù)據(jù),方便檢索和訪問

1.1數(shù)據(jù)庫基礎知識數(shù)據(jù)(Data):是信息的載體;是描述事物的符號記錄,信息是數(shù)據(jù)的內(nèi)容。

符號:數(shù)字、文字、圖形、聲音、語音等在計算機中,為了處理現(xiàn)實世界中的事物,可以抽象出人們感興趣的事物特征,組成一個記錄來描述該事物。1.1.1信息、數(shù)據(jù)與數(shù)據(jù)管理1.1數(shù)據(jù)庫基礎知識數(shù)據(jù)(Data):在計算機D文字、數(shù)字、圖形、圖像、聲音等數(shù)字、文字數(shù)據(jù)庫文件PIWordExcelPowerPointFrontPagePhotoshopC,VB.NETAccess,VFPSQLServer文檔(.doc)工作簿(.xls)文稿(.ppt)網(wǎng)頁(.html)圖片(.bmp)數(shù)字、文字查詢結果或報表DataInformationProcessingD文字、數(shù)字、圖形、圖像、聲音等PIWord文檔(.doc)數(shù)據(jù)人:(李四,男,1988,2008,計算機系)(李四,男,1988,180,75,80,120)數(shù)據(jù)人:(李四,男,1988,2008,計算機系數(shù)據(jù)管理數(shù)據(jù)的處理是指對各種數(shù)據(jù)進行收集、存儲、加工和傳播的一系列活動的集合。而數(shù)據(jù)管理是指對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護等操作。它是數(shù)據(jù)處理的中心問題。數(shù)據(jù)管理數(shù)據(jù)的處理是指對各種數(shù)據(jù)進行收集1.1.2數(shù)據(jù)管理技術的發(fā)展人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段背景應用背景科學計算科學計算、管理大規(guī)模管理硬件背景無直接存取存儲設備磁盤、磁鼓大容量磁盤軟件背景沒有操作系統(tǒng)有文件系統(tǒng)有數(shù)據(jù)庫管理系統(tǒng)處理方式批處理聯(lián)機實時處理、批處理聯(lián)機實時處理、分布處理、批處理特點數(shù)據(jù)的管理者用戶(程序員)文件系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)面向的對象某一應用程序某一應用現(xiàn)實世界數(shù)據(jù)的共享程度無共享,冗余度極大共享性差,冗余度大共享性高,冗余度小數(shù)據(jù)的獨立性不獨立,完全依賴于程序獨立性差具有高度的物理獨立性和一定的邏輯獨立性數(shù)據(jù)的結構化無結構記錄內(nèi)有結構、整體無結構整體結構化,用數(shù)據(jù)模型描述數(shù)據(jù)控制能力應用程序自己控制應用程序自己控制由DBMS提供數(shù)據(jù)安全性、完整性、并發(fā)控制和恢復能力數(shù)據(jù)管理三階段的比較1.1.2數(shù)據(jù)管理技術的發(fā)展人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫數(shù)據(jù)庫的發(fā)展史萌芽階段——文件系統(tǒng)使用磁盤文件來存儲數(shù)據(jù)初級階段——第一代數(shù)據(jù)庫出現(xiàn)了網(wǎng)狀模型、層次模型的數(shù)據(jù)庫中級階段——第二代數(shù)據(jù)庫關系型數(shù)據(jù)庫和結構化查詢語言高級階段——新一代數(shù)據(jù)庫“關系-對象”型數(shù)據(jù)庫數(shù)據(jù)庫的發(fā)展史萌芽階段——文件系統(tǒng)OracleOracle公司的產(chǎn)品“關系-對象”型數(shù)據(jù)庫產(chǎn)品免費、服務收費SQLServer針對不同用戶群體的五個特殊的版本易用性好DB2IBM公司的產(chǎn)品支持多操作系統(tǒng)、多種類型的硬件和設備時下流行的數(shù)據(jù)庫Oracle時下流行的數(shù)據(jù)庫1.1.3數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫(DataBase,簡稱DB):

長期存放在計算機內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。特點數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲較小的冗余度較高的數(shù)據(jù)獨立性和易擴充性為各種用戶共享1.1.3數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫(Da

數(shù)據(jù)庫管理系統(tǒng)概念數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,簡稱DBMS)位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理軟件,是幫助用戶創(chuàng)建、維護和使用數(shù)據(jù)庫的軟件系統(tǒng)。功能:數(shù)據(jù)定義—數(shù)據(jù)定義語言(DataDefinitionLanguage,DDL)數(shù)據(jù)操縱—數(shù)據(jù)操縱語言(DataManipulationLanguage,DML)數(shù)據(jù)庫的運行與管理數(shù)據(jù)庫管理系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,簡稱DBS):

計算機系統(tǒng)中引入數(shù)據(jù)庫技術后的系統(tǒng)。組成:數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(開發(fā)工具)應用系統(tǒng)數(shù)據(jù)庫管理員(DataBaseAdministrator,DBA)用戶數(shù)據(jù)庫系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)構成數(shù)據(jù)庫操作系統(tǒng)數(shù)據(jù)庫管理員數(shù)據(jù)庫管理系統(tǒng)應用開發(fā)工具應用系統(tǒng)用戶用戶用戶數(shù)據(jù)庫系統(tǒng)構成數(shù)據(jù)庫操作系統(tǒng)數(shù)據(jù)庫管理員數(shù)據(jù)庫管理數(shù)據(jù)庫在計算機系統(tǒng)中的地位數(shù)據(jù)庫在計算機系統(tǒng)中的地位

1.1.4數(shù)據(jù)模型概念模型是現(xiàn)實世界特征的模擬和抽象。數(shù)據(jù)模型(DataModel)是現(xiàn)實世界數(shù)據(jù)特征的抽象,是對現(xiàn)實世界的模擬。數(shù)據(jù)模型應滿足三方面的要求:能比較真實地模擬現(xiàn)實世界容易為人所理解便于在計算機世界實現(xiàn)1.1.4數(shù)據(jù)模型概念數(shù)據(jù)模型可以分為兩類:

概念模型—按用戶的觀點來對數(shù)據(jù)和信息進行抽象

結構數(shù)據(jù)模型—按計算機系統(tǒng)的觀點對數(shù)據(jù)建模數(shù)據(jù)模型可以分為兩類:

信息世界的基本概念(1)實體(Entity):

客觀存在并且可以相互區(qū)別的事物

現(xiàn)實世界中客觀存在的、可以被描述事物都是“實體”信息世界的基本概念(1)實體(Entity):

信息世界的基本概念(2)屬性(Attribute):

實體所具有的某一特性稱為實體的屬性

(3)關鍵字(Key):

唯一標識實體的屬性集稱為關鍵字。碼

(4)域(Domain):

屬性的取值范圍稱為該屬性的域信息世界的基本概念(2)屬性(Attribute信息世界的基本概念(5)實體型(EntityType):

具有相同屬性的實體稱為同型實體,用實體名及其屬性名的集合來抽象和刻畫同類實體,稱為實體型。

職工(職工編號,姓名,性別,職稱,學歷,工作時間)

(6)實體集(EntitySet):

同型實體的集合稱為實體集信息世界的基本概念(5)實體型(Entity信息世界的基本概念(7)聯(lián)系(Relationship):

實體型內(nèi)部各屬性之間的聯(lián)系以及實體型之間的聯(lián)系.

一對一聯(lián)系(1:1)

一對多聯(lián)系(1:m)

多對多聯(lián)系(m:n)

信息世界的基本概念(7)聯(lián)系(Relations概念模型的表示方法實體-聯(lián)系方法(Entity-Relationship):

該方法用E-R圖來描述現(xiàn)實世界的概念模型

實體型:用矩形表示,矩形框內(nèi)寫實體名

屬性:用橢圓形表示,框內(nèi)寫屬性名,用無向邊將屬性與實體連起來

聯(lián)系:用菱形表示,框內(nèi)寫聯(lián)系名,用無向邊與有關實體連接起來,同時在無向邊上注明聯(lián)系類型。聯(lián)系的屬性也要用無向邊與聯(lián)系連接起來。概念模型的表示方法實體-聯(lián)系方法(Entity-

E-R圖舉例:學生選課管理E-R圖性別教材編號主編教材課程學生選用選課教材名出版社單價課程號課程名學時數(shù)學分課程性質(zhì)課程成績學號姓名出生年月入學時間班級11mnE-R圖舉例:學生選課管理E-R圖性別教材編號主常見的數(shù)據(jù)模型●層次模型(HierarchicalModel)

●網(wǎng)狀模型(NetworkModel)

●關系模型(RelationalModel)

●面向?qū)ο竽P停∣bjectOrientedModel)關系模型的優(yōu)點:

●建立在嚴格的數(shù)學概念基礎上

●概念單一

●存取路徑對用戶透明常見的數(shù)據(jù)模型●層次模型(Hierarchi1.層次模型

層次模型(HierarchicalModel)是一種以記錄某一事物的類型為根節(jié)點的有向樹。優(yōu)點:不同層次之間的關聯(lián)性直接而且簡單。缺點:

由于數(shù)據(jù)縱向發(fā)展,橫向關系難以建立,數(shù)據(jù)可能會重復出現(xiàn),造成管理維護的不便。1.層次模型層次模型(HierarchicalMod網(wǎng)狀模型是層次模型的擴展,表示多個從屬關系的層次結構,呈現(xiàn)一種交叉關系的網(wǎng)狀結構。2.網(wǎng)狀模型

特點:可以有多個根記錄,一個子記錄可以有多個父記錄??梢员硎緳M向復雜的聯(lián)系。網(wǎng)狀模型是層次模型的擴展,表示多個從屬關系的層次結構,呈現(xiàn)一優(yōu)點:很容易反映實體之間的關聯(lián),同時還避免了數(shù)據(jù)的重復性;缺點:關聯(lián)錯綜復雜,當數(shù)據(jù)庫逐漸增多時,將很難對結構中的關聯(lián)性進行維護,尤其是數(shù)據(jù)庫越來越大時。優(yōu)點:3.關系模型

目前關系模型是最重要的一種數(shù)據(jù)模型。關系數(shù)據(jù)系統(tǒng)采用關系模型為數(shù)據(jù)的組織方式,SQLServer2005數(shù)據(jù)庫就是基于關系模型建立的。關系模型具有如下優(yōu)點:關系模型建立在嚴格的數(shù)學概念基礎上。關系模型的概念單一,無論實體還是實體之間的聯(lián)系都用關系表示,對數(shù)據(jù)的檢索結果也是關系。關系模型的存取路徑對用戶透明。3.關系模型目前關系模型是最重要的一種數(shù)據(jù)模型

1.1.5數(shù)據(jù)庫系統(tǒng)的體系結構數(shù)據(jù)庫的三級模式兩級映像結構

模式(Schema):也稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述外模式(ExternalSchema):

又稱子模式或用戶模式,是模式的子集,是數(shù)據(jù)的局部邏輯結構,也是數(shù)據(jù)庫用戶看到的數(shù)據(jù)視圖內(nèi)模式(InternalSchema):

也稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫中的內(nèi)部表示,即數(shù)據(jù)的物理結構和存儲方式描述1.1.5數(shù)據(jù)庫系統(tǒng)的體系結構數(shù)據(jù)庫的三級模式兩數(shù)據(jù)庫的三級模式兩級映像結構數(shù)據(jù)庫內(nèi)模式模式外模式A外模式B應用1應用2應用3應用4應用5由數(shù)據(jù)庫管理員建立和維護模式/內(nèi)模式映像外模式/模式映像外模式/模式映像數(shù)據(jù)庫管理系統(tǒng)操作系統(tǒng)數(shù)據(jù)庫的三級模式兩級映像結構數(shù)據(jù)庫內(nèi)模式模式外模數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性兩級映像:外模式/模式映像存在外模式與模式之間的某種對應關系模式/內(nèi)模式映像全局邏輯結構與存儲結構之間的對應關系數(shù)據(jù)的物理獨立性和邏輯獨立性數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性兩級映像:數(shù)據(jù)的物理獨立性和1.2關系數(shù)據(jù)庫1.2.1關系模型1970年由美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關系模型

1981年ACM圖靈獎組成:數(shù)據(jù)結構、關系操作、關系的完整性1.2關系數(shù)據(jù)庫1.2.1關系模型1970年由美國IBM關系模型的基本術語(1)關系模型(RelationalModel):

用二維表格結構來表示實體及實體間聯(lián)系的模型

(2)屬性(Attribute)和值域(Domain):

在二維表中的列稱為屬性,列值稱為屬性值,屬性值的取值范圍稱為值域

(3)關系模式(RelationalSchema):

在二維表格中行的定義(記錄的型)關系模型的基本術語(1)關系模型(Relatio關系模型的基本術語(4)元組(Tuple)與關系:

二維表格中的行稱為元組,元組的集合稱為關系(5)關鍵字(Key)或碼:

能夠用來唯一標識元組的屬性(或?qū)傩越M合)稱為關鍵字或碼。(6)候選關鍵字或候選碼(CandidateKey):

如果在一個關系中,存在著多個屬性(或?qū)傩越M合)都能用來唯一標識該關系的元組,這些屬性或?qū)傩缘慕M合都稱為該關系的候選關鍵字或候選碼。

主關鍵字或主碼(PrimaryKey)關系模型的基本術語(4)元組(Tuple)與關系關系模型的基本術語(7)主關鍵字或主碼(PrimaryKey)主屬性(PrimeAttribute):

包含在任何一個候選碼中的屬性

(8)非主屬性或非關鍵字屬性(NonPrimeAttribute):

關系中不能組成關鍵字的屬性關系模型的基本術語(7)主關鍵字或主碼(Prima關系模型的基本術語(9)外部關鍵字或外鍵(ForeignKey):

當關系中的某個屬性或?qū)傩越M合雖不是該關系的關鍵字或只是關鍵字的一部分,但卻是另一個關系的關鍵字時,稱該屬性或?qū)傩越M合為這個關系的外部關鍵字或外鍵。兩個關系:

選課(學號,課程號,成績)

學生(學號,姓名,性別,出生日期)關系模型的基本術語(9)外部關鍵字或外鍵(For

關系模型的基本術語(10)從表與主表:

以某屬性為主鍵的表稱為主表,以此屬性為外鍵的表稱為從表。兩個表:

學生(學號,姓名,性別,出生日期)選課(學號,課程號,成績)

關系模型的基本術語(10)從表與主表:

以某屬關系模型的數(shù)據(jù)結構--二維表格學生表學號姓名性別出生日期系部代碼入學時間010101001001張斌男1970-5-4012001-9-18010102002001周紅瑜女1972-7-8012001-9-18010201001001賈凌云男1974-9-1022002-9-18關系屬性(列)關系名關系模式主碼關系模型的數(shù)據(jù)結構--二維表格學生表學號姓名性別編號姓名獎懲類型獎懲情況備注1曹操獎勵三好學生德智體全面發(fā)展2司馬懿獎勵三好學生班級管理出色班級管理出色11司馬懿2德智體全面發(fā)展11曹操1備注獎懲情況獎懲類型姓名編號處分2獎勵1獎懲類型獎懲類型編碼優(yōu)秀學生干部2三好學生1班級獎勵情況編碼存在冗余為減少數(shù)據(jù)查找的麻煩,允許數(shù)據(jù)有一定的冗余數(shù)據(jù)完整性編號姓名獎懲類型獎懲情況備注1曹操獎勵三好學生德智體全面發(fā)展序號姓名家庭住址班級12張三12北京新村高一(二)13李四123,華龍小區(qū).高一(三)15王五32,前進大廈高三(四)12錢六42,和平花苑高二(五)13趙七12,新風小區(qū)高二(六)15王五33,金光大道高一(四)不同的地址!存在不正確、不準確的數(shù)據(jù),數(shù)據(jù)庫“失去了完整性”姓名數(shù)據(jù)完整性序號姓名家庭住址班級12張三12北京新村高一(二)13李四關系模型的數(shù)據(jù)完整性數(shù)據(jù)完整性指關系模型中數(shù)據(jù)的正確性和一致性●實體完整性(EntityIntegrity)

要求關系中的元組在組成主鍵的屬性列上的值不能為空

●參照完整性(ReferenceIntegrity)

要求不能在從表中引用主表中不存在的元組

●用戶自定義完整性(User-definedIntegrity)

根據(jù)應用領域的需要,由用戶定義的約束條件,體現(xiàn)了具體應用領域的語義約束關系模型的數(shù)據(jù)完整性數(shù)據(jù)完整性指關系模型中數(shù)據(jù)的關系操作關系操作的基礎是關系代數(shù)

關系代數(shù)是一種抽象的查詢語言,與具體的DBMS中實現(xiàn)語言并不完全一致關系操作的特點--集合操作

操作的對象和結果都是集合,稱為一次一個集合的方式(set-at-a-time)

非關系數(shù)據(jù)模型:

一次一記錄(record-at-a-time)關系操作關系操作的基礎是關系代數(shù)

關系代數(shù)是一關系操作查詢操作(query)選擇(Select)投影(Project)連接(Join)除(Divide)并(Union)交(Intersection)差(Difference)更新操作(update)增加(Insert)刪除(Delete)修改(Update)關系操作查詢操作(query)更新操作(updatSQL(StructuredQueryLanguage)SQL是關系數(shù)據(jù)庫的標準語言,它提供了數(shù)據(jù)定義、數(shù)據(jù)查詢和訪問控制功能:數(shù)據(jù)定義:

定義基本表:

CREATETABLE,DROPTABLE,ALTERTABLE

定義視圖:

CREATEVIEW,DROPVIEW

定義索引:

CREATEINDEX,DROPINDEXSQL(StructuredQueryLanguage)SQL(StructuredQueryLanguage)數(shù)據(jù)查詢功能:

SELECT

數(shù)據(jù)更新功能:

INSERT,DELETE,UPDATE

訪問控制功能:

GRANT,REVOKE

嵌入式使用方式:SQL(StructuredQueryLanguage)

1.2.2關系數(shù)據(jù)理論1971年由E.F.Codd提出了規(guī)范化理論

關系數(shù)據(jù)理論就是指導產(chǎn)生一個具體確定的、好的數(shù)據(jù)庫模式的理論體系針對一個具體的數(shù)據(jù)庫應用問題,應該構造幾個關系模式?每個關系由哪些屬性組成?即如何構造適合于它的數(shù)據(jù)模式?數(shù)據(jù)庫邏輯設計問題1.2.2關系數(shù)據(jù)理論1971年由E.F.C問題的提出:學生關系:學生(學號,姓名,性別,出生日期,入學時間,系部代碼)

課程關系:課程(課程號,課程名,學時數(shù),學分)

選課關系:選課(學號,課程號,成績)只有一個關系模式:

學生—選課–課程(學號,姓名,性別,出生日期,入學時間,系部代碼,課程號,課程名,學時數(shù),學分,成績)

有三個關系模式:

學生(學號,姓名,性別,出生日期,入學時間,系部代碼)

課程(課程號,課程名,學時數(shù),學分)

選課(學號,課程號,成績)問題的提出:學生關系:學生(學號,姓名,性別,出第一種設計可能存在的問題:數(shù)據(jù)冗余,修改異常,插入異常,刪除異常學號姓名性別...課程號課程名學時數(shù)學分成績2004001張斌男0001數(shù)學804892004002周紅瑜女0001數(shù)學804912004003賈凌云男0001數(shù)學804762004001張斌男0002外語753902004002周紅瑜女0002外語753782004003賈凌云男0002外語753702004001張斌男0003數(shù)據(jù)庫602772004002周紅瑜女0003數(shù)據(jù)庫602842004003賈凌云男0003數(shù)據(jù)庫60279第一種設計可能存在的問題:數(shù)據(jù)冗余,修改異常,插關系模式的規(guī)范化(1)第一范式

如果關系模式R的每一個屬性都是不可再分的,則稱R為第一范式,記為:學號姓名性別出生日期家庭成員父親母親母親父親出生日期性別姓名學號關系模式的規(guī)范化(1)第一范式

如果關系模式第二范式(2)第二范式

如果關系模式R是第一范式,且每個非主屬性都完全函數(shù)依賴于關鍵字,則稱R為滿足第二范式的模式

記為:選課(學號,課程號,系部代碼,出生日期,成績)成績學號課程號系名出生日期成績學號課程號學號系名出生日期第二范式(2)第二范式

如果關系第三范式(3)第三范式

如果關系模式R是第二范式,且沒有一個非關鍵字屬性是傳遞函數(shù)依賴于候選關鍵字屬性,則稱R為滿足第三范式的模式。記為:學號系名系宿舍樓學生(學號,姓名,性別,出生日期,入學時間, 系名,系宿舍樓)學號系名系名系宿舍樓第三范式(3)第三范式

如果關系模式R是第二范式,關系規(guī)范化小節(jié)2NF3NFBCNF4NF1NF消除決定因素非關鍵字的非平凡函數(shù)依賴消除非主屬性對關鍵字的部分函數(shù)依賴消除非主屬性對關鍵字的傳遞函數(shù)依賴消除主屬性對關鍵字的部分和傳遞函數(shù)依賴消除非平凡且非函數(shù)依賴的多值依賴關系規(guī)范化小節(jié)2NF3NFBCNF4NF需求分析概念設計邏輯設計物理設計應用開發(fā)系統(tǒng)維護系統(tǒng)綜述設計基礎數(shù)據(jù)模型概念模型關系模型系統(tǒng)安全數(shù)據(jù)維護概念模型轉(zhuǎn)換關系模型關系規(guī)范化創(chuàng)建數(shù)據(jù)庫創(chuàng)建基本表創(chuàng)建索引數(shù)據(jù)查詢創(chuàng)建視圖程序設計SQLServer2008平臺T-SQL語言查詢編輯器學習內(nèi)容在數(shù)據(jù)庫系統(tǒng)開發(fā)中的位置圖

1.3數(shù)據(jù)庫設計需求分析概念設計邏輯設計物理設計應用開發(fā)系統(tǒng)維護系統(tǒng)綜述設計1.3.1數(shù)據(jù)庫設計的任務、特點和步驟(1)數(shù)據(jù)庫設計的任務

針對一個給定的應用環(huán)境,構造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應用系統(tǒng),使之能有效地收集、存儲、操作和管理數(shù)據(jù),滿足用戶的各種需求1.3.1數(shù)據(jù)庫設計的任務、特點和步驟(1)數(shù)據(jù)庫設計的任(2)數(shù)據(jù)庫設計的特點

數(shù)據(jù)庫設計既是一項涉及多學科的綜合性技術,又是一項龐大的工程項目。數(shù)據(jù)庫建設是硬件、軟件和技術與管理的界面的結合;整個設計過程要把結構(數(shù)據(jù))設計和行為(處理)設計密切結合起來。(2)數(shù)據(jù)庫設計的特點數(shù)據(jù)庫設計既是一項涉(3)數(shù)據(jù)庫設計的步驟需求分析概念結構設計邏輯結構設計物理結構設計數(shù)據(jù)庫實施數(shù)據(jù)庫運行和維護(3)數(shù)據(jù)庫設計的步驟需求分析數(shù)據(jù)庫設計的基本步驟概念設計邏輯設計物理設計系統(tǒng)實施試運行運行和維護需求收集和分析應用需求(數(shù)據(jù)、處理)轉(zhuǎn)換規(guī)則DBMS功能優(yōu)化方法DBMS的詳細功能書(數(shù)據(jù)、處理)不滿意不滿意需求分析概念設計邏輯設計物理設計實施運行和維護數(shù)據(jù)庫設計的基本步驟概念設計邏輯設計物理設計

1.3.2需求分析的任務基本任務:準確地回答”系統(tǒng)必須做什么”分析人員

用戶簡單地說:分析用戶的要求確定用戶的最終需求是一件很困難的事1.3.2需求分析的任務基本任務:準確地回答可行性研究需求分析本階段結束后得出的文檔應該包括:

詳細的數(shù)據(jù)流圖,數(shù)據(jù)字典,簡明的算法描述可行性研究階段產(chǎn)生的文檔,特別是數(shù)據(jù)流圖,是需求分析的出發(fā)點。數(shù)據(jù)流圖中已經(jīng)劃分出系統(tǒng)必須完成的許多基本功能需求分析的結果是系統(tǒng)開發(fā)的基礎,關系到工程的成敗和軟件產(chǎn)品的質(zhì)量可行性研究需求分析本階段結束后得出的文需求分析各階段的具體任務(2)分析系統(tǒng)的數(shù)據(jù)要求

任何一個軟件系統(tǒng)都是一個信息處理系統(tǒng),系統(tǒng)必須處理的信息和系統(tǒng)應該產(chǎn)生的信息在很大程度上決定了系統(tǒng)的面貌(1)確定對系統(tǒng)的綜合要求

系統(tǒng)功能、系統(tǒng)性能、運行要求、將來可能提出的要求需求分析各階段的具體任務(2)分析系統(tǒng)的數(shù)據(jù)要求需求分析各階段的具體任務(3)導出系統(tǒng)的邏輯模型

綜合上述兩項的分析結果可導出系統(tǒng)詳細的邏輯模型。

通常用數(shù)據(jù)流圖,數(shù)據(jù)字典和主要的處理算法描述這個模型。需求分析各階段的具體任務(3)導出系統(tǒng)的邏輯模型需求分析各階段的具體任務(4)修正系統(tǒng)的開發(fā)計劃

根據(jù)在分析過程中獲得的對系統(tǒng)的更深入,更具體的了解,可以比較準確地估算出系統(tǒng)開發(fā)的進度和成本,修正以前的開發(fā)計劃。(5)開發(fā)原型系統(tǒng)需求分析各階段的具體任務(4)修正系統(tǒng)的開需求分析的方法進行需求分析首先要調(diào)查清楚用戶的實際要求,與用戶達成共識,然后分析與表達這些要求調(diào)查用戶需求的基本步驟:(1)調(diào)查組織機構情況

(2)熟悉業(yè)務活動

(3)明確用戶要求

(4)確定系統(tǒng)邊界需求分析的方法進行需求分析首先要調(diào)查清楚用戶的實需求分析中不同的調(diào)查方法(1)跟班作業(yè)

(2)開調(diào)查會

(3)請專人介紹

(4)詢問

(5)設計調(diào)查表格來讓用戶填寫

(6)查閱記錄需求分析中不同的調(diào)查方法(1)跟班作業(yè)

(2)開

1.3.3概念結構設計將需求分析階段簡單地說:分析用戶的要求1.3.3概念結構設計將需求分析階段簡單地說:分1.3.5數(shù)據(jù)庫設計案例以高校學分制選課管理信息系統(tǒng)的數(shù)據(jù)庫設計為例,重點介紹數(shù)據(jù)庫設計中的概念設計與邏輯設計部分。為了便于讀者理解,對選課管理信息系統(tǒng)做了一些簡化處理。高校學分制選課管理信息系統(tǒng)要求:

學生根據(jù)開課目錄填寫選課單進行選課;系統(tǒng)根據(jù)教學計劃檢查應修的必修課及其他課程并自動選擇;檢查是否存在未取得學分的必修課,如果存在,則提示重選;學生按學分制選課規(guī)則選修課程;查詢學生的各門課程的成績、學分及績點。1.3.5數(shù)據(jù)庫設計案例以高校學分制選課管理信息系統(tǒng)的數(shù)1.選課管理信息系統(tǒng)數(shù)據(jù)流圖選課管理信息系統(tǒng)數(shù)據(jù)流圖如圖1-11和圖1-12所示。學生學生學生選課系統(tǒng)選課單成績單圖1選課管理信息系統(tǒng)的頂層數(shù)據(jù)流圖學生學生學生選課課程注冊打印課程初選表課程注冊表開課目錄學業(yè)成績庫選課單圖2選課管理信息系統(tǒng)的第一層數(shù)據(jù)流圖

1.選課管理信息系統(tǒng)數(shù)據(jù)流圖學生學生學生選課系統(tǒng)選課單成績單第1講數(shù)據(jù)庫技術基礎——準備知識新課件2.選課管理信息系統(tǒng)E-R圖(1)設計局部E-R模型。以選課管理信息系統(tǒng)數(shù)據(jù)流圖為依據(jù),設計局部E-R模型的步驟如下:①確定實體類型。選課管理信息系統(tǒng)有三個實體:學生、課程、教師。②確定聯(lián)系類型。

學生與課程之間是m:n聯(lián)系:即一個學生可以選修多門課程,一門課程可以被多個學生選修,定義聯(lián)系為“學生—課程”。教師與課程之間是m:n聯(lián)系:即一名教師可以講授多門課程,一門課程也可以由多名教師講授,定義聯(lián)系為“教師—課程”。學生與教師之間是m:n聯(lián)系:即一名教師可教多個學生,一個學生可以由多個教師來教,定義聯(lián)系為“學生—教師”。學生與教師的聯(lián)系是通過授課聯(lián)系起來的。2.選課管理信息系統(tǒng)E-R圖②確定聯(lián)系類型。③確定實體類型的屬性:實體類型“學生”的屬性:學號、姓名、性別、出生日期、入學時間、班級、系部。實體類型“課程”的屬性:課程號、課程名、學時數(shù)、學分。實體類型“教師”的屬性:教師編號、姓名、性別、出生日期、學歷、職稱、職務。③確定實體類型的屬性:實體類型“學生”的屬性:④確定聯(lián)系類型。⑤根據(jù)實體類型畫出E-R圖,如圖3所示。姓名學號系部出生日期性別學號姓名學歷職務入學時間班級學號學分課程號成績學生課程教師選課任課授課學分教師編號課程名課程號學時數(shù)職稱性別教師編號mn課程學分課程名課程號學時數(shù)n課程號m教師編號出生日期n圖3選課管理信息系統(tǒng)局部E-R圖

④確定聯(lián)系類型。姓名學號系部出生日期性別學號姓名學歷職務入(2)設計全局E-R模型:將所有局部的E-R圖集成為全局的E-R模型。全局E-R圖中省略了屬性。在集成的過程中,要消除屬性、結構、命名三類沖突,實現(xiàn)合理的集成。成績學分課程號教師編號教學教師課程學生學號圖4選課管理信息系統(tǒng)的全局E-R圖

(2)設計全局E-R模型:將所有局部的E-R圖集(3)全局E-R模型的優(yōu)化。分析全局E-R模型,看能否反映和滿足用戶的功能需求,盡量做到實體的個數(shù)盡可能少,實體類型所含屬性盡可能少,實體類型間的聯(lián)系無冗余。(3)全局E-R模型的優(yōu)化。分析全局E-R模型,看能否反映和3.選課管理信息系統(tǒng)關系模式(1)將選課管理信息系統(tǒng)E-R模型按規(guī)則轉(zhuǎn)換成關系模式,得到如下關系模式:一個實體對應一個關系模式:學生(學號,姓名,出生日期,入學時間,班級代碼,專業(yè)代碼,系部代碼)課程(課程號,課程名,學分)教師(教師編號,姓名,性別,出生日期,學歷,職務,職稱,系部代碼,專業(yè),備注)聯(lián)系轉(zhuǎn)換成關系模式:成績(學號,課程號,教師編號,成績,學分)3.選課管理信息系統(tǒng)關系模式

(2)模式評價與優(yōu)化。檢查數(shù)據(jù)庫模式是否能滿足用戶的要求,根據(jù)功能需求,合并關系或增加關系、屬性并規(guī)范化,得到如下關系模式:學生關系模式:學生(學號,姓名,出生日期,入學時間,班級代碼,專業(yè)代碼,系部代碼)系部(系部代碼,系部名稱,系主任)專業(yè)(專業(yè)代碼,專業(yè)名稱,系部名稱)班級(班級代碼,班級名稱,專業(yè)代碼,系部代碼,備注)(2)模式評價與優(yōu)化。檢查數(shù)據(jù)庫模式是否能滿足用戶的要求,課程關系模式:課程(課程號,課程名,學分)教師關系模式:教師(教師編號,姓名,性別,出生日期,學歷,職務,職稱,系部代碼,專業(yè),備注)成績關系模式——教學活動相關的內(nèi)容:教學計劃(課程號,專業(yè)代碼,專業(yè)學級,課程類型,開課學期,學分)教師任課(教師編號,課程號,專業(yè)學級,專業(yè)代碼,學年,學期,學生數(shù))課程注冊(注冊號,學號,課程號,教師編號,專業(yè)代碼,專業(yè)學級,選課類型,學期,學年,成績,學分)課程關系模式:圖書借閱系統(tǒng)根據(jù)系統(tǒng)需求分析,得到讀者實體,屬性有讀者編號、姓名、讀者類型和已借數(shù)量等。圖書實體,屬性有圖書編號、書名、作者、出版社、出版日期和定價等。讀者和圖書實體之間通過借閱建立聯(lián)系,并派生出借期和還期屬性。假定一位讀者可以借閱多本圖書,一本圖書可以經(jīng)多位讀者借閱,讀者和圖書之間的借閱聯(lián)系類型是多對多的。其E-R圖如下圖所示。圖書借閱系統(tǒng)根據(jù)系統(tǒng)需求分析,得到讀者實體,屬思考案例:圖書管理系統(tǒng)E-R圖讀者編號姓名類型編號已借數(shù)量還期借期讀者編號圖書編號讀者借閱圖書圖書編號書名作者出版社出版日期定價nm思考案例:圖書管理系統(tǒng)E-R圖讀者編號姓名類型編號已借數(shù)量還本章內(nèi)容到此結束Tobecontinued!本章內(nèi)容到此結束Tobecontinued!學習領域:SQL數(shù)據(jù)庫開發(fā)載體:教務管理系統(tǒng)開發(fā)子項目:安裝和熟悉數(shù)據(jù)庫子任務1-1數(shù)據(jù)庫基本概念子任務1-2軟件的安裝和使用子任務2-1創(chuàng)建數(shù)據(jù)庫子任務2-2管理數(shù)據(jù)庫子項目:實現(xiàn)教務管理DB子項目:實現(xiàn)教務管理表子任務3-1創(chuàng)建表和維護表子任務3-2表中數(shù)據(jù)的添加和管理子項目:實現(xiàn)信息檢索子任務4-1簡單查詢、連接查詢子任務4-2嵌套查詢、高級查詢子項目:基于視圖和索引子任務5-1視圖創(chuàng)建與管理子任務5-2索引創(chuàng)建與管理子項目:T-SQL程序設計子項目:T-SQL程序設計情境1:SQL的安裝與使用情境2:設計和創(chuàng)建數(shù)據(jù)庫情境3:設計和創(chuàng)建表情境4:實現(xiàn)信息查詢情境5:視圖與索引情境6:T-SQL編程情境7:數(shù)據(jù)庫安全與維護子任務6-1SQL程序設計子任務6-2存儲過程與觸發(fā)器子任務7-1安全管理子任務7-2數(shù)據(jù)庫的維護學習領域:SQL數(shù)據(jù)庫開發(fā)載體:教務管理系統(tǒng)開發(fā)子項目:安裝1、MicrosoftSQLServer2008:技術學習中心/zh-cn/sqlserver/default.aspx2、SQLServer2005盛宴系列/zh-cn/dd722671(l=zh-cn)3、SQL2008完全學習手冊視頻教程/special-spid-48.html4、/art/200511/12708.htm1、MicrosoftSQLServer2008:技術課后習題一、選擇題1.數(shù)據(jù)庫(DB)、數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關系是()。A.DBS包括DB和DBMSB.DBMS包括DB和DBSC.DB包括DBS和DBMSD.DBS就是DB,也就是DBMSA課后習題一、選擇題A2.下面列出的數(shù)據(jù)庫管理技術發(fā)展的3個階段中,沒有專門的軟件對數(shù)據(jù)進行管理的階段是()。I.人工管理階段II.文件系統(tǒng)階段III.數(shù)據(jù)庫階段A.I和IIB.只有IIC.II和IIID.只有ID2.下面列出的數(shù)據(jù)庫管理技術發(fā)展的3個階段中,沒有專門的軟件3.描述數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結構和特性的是()。A.模式B.內(nèi)模式C.外模式4.要保證數(shù)據(jù)庫的數(shù)據(jù)獨立性,需要修改的是()。A.模式與外模式B.模式與內(nèi)模式C.三級模式之間的兩層映射D.三級模式AC3.描述數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結構和特性的是()。AC5.E-R方法的三要素是()。A.實體、屬性、實體集B.實體、鍵、聯(lián)系C.實體、屬性、聯(lián)系D.實體、域、候選區(qū)6.概念設計的結果是()。A.一個與DBMS相關的要領模型B.一個與DBMS無關的概念模型C.數(shù)據(jù)庫系統(tǒng)的公用視圖D.數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)字典CB5.E-R方法的三要素是()。CB7.下列四項中,不屬于數(shù)據(jù)庫系統(tǒng)特點的是()。A.數(shù)據(jù)共享B.數(shù)據(jù)完整性C.數(shù)據(jù)冗余度高D.數(shù)據(jù)獨立性高C7.下列四項中,不屬于數(shù)據(jù)庫系統(tǒng)特點的是()。CSQLserver2005數(shù)據(jù)庫應用與開發(fā)教程SQLserver2005數(shù)據(jù)庫應用與開發(fā)教程教材SQLServer2008數(shù)據(jù)庫技術實用教程,清華大學出版社,高云主編參考書SQLServer2008數(shù)據(jù)庫應用與開發(fā)教程,清華大學出版社,衛(wèi)琳主編數(shù)據(jù)庫應用技術(SQLServer2005),中國鐵道出版社,申時凱李海雁主編數(shù)據(jù)庫應用技術(SQLServer2005),人民郵電出版社,周慧主編教材授課環(huán)節(jié)教學:32學時實驗:32學時考核:平時10%,實驗20%,期末考試70%答疑郵箱:zhoushaoke@126.com授課環(huán)節(jié)要求掌握數(shù)據(jù)庫的基本理論熟練操縱SQLServer數(shù)據(jù)庫了解相關的數(shù)據(jù)庫開發(fā)工具能夠開發(fā)出一個小型的基于SQLServer的信息管理系統(tǒng)要求第一講數(shù)據(jù)庫技術基礎——準備知識1.1數(shù)據(jù)庫基礎知識

1.2關系數(shù)據(jù)庫

1.3數(shù)據(jù)庫設計第一講數(shù)據(jù)庫技術基礎——準備知識1.1數(shù)據(jù)庫基礎知識

1能力目標:認識數(shù)據(jù)庫系統(tǒng)的組成和C/S、B/S結構。認識各種數(shù)據(jù)庫管理系統(tǒng)、開發(fā)工具及其特點。明確與數(shù)據(jù)庫技術相關的職業(yè)技術崗位。能夠根據(jù)項目需求分析報告進行數(shù)據(jù)庫的概念模型設計。通過項目需求分析,培養(yǎng)與客戶溝通的能力。

任務設計:閱讀管理信息系統(tǒng)的項目需求分析報告。根據(jù)項目需求分析建立概念(E-R)數(shù)據(jù)模型。能力目標:知識要求:數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展。數(shù)據(jù)庫系統(tǒng)概述。數(shù)據(jù)庫三級模式結構的重要概念。DBMS的主要功能。數(shù)據(jù)模型概述。數(shù)據(jù)庫概念設計。知識要求:為何要學習數(shù)據(jù)庫?數(shù)據(jù)庫服務器響應和提供數(shù)據(jù)應用程序數(shù)據(jù)庫操作和查詢?yōu)楹我獙W習數(shù)據(jù)庫?數(shù)據(jù)庫服務器響應和提供數(shù)據(jù)應用程序數(shù)據(jù)庫操數(shù)據(jù)庫作用:要求:應用程序作用:要求:數(shù)據(jù)庫能夠做什么?存儲數(shù)據(jù)、檢索數(shù)據(jù)、生成新的數(shù)據(jù)統(tǒng)一、安全、性能等響應操作并顯示結果、向數(shù)據(jù)庫請求數(shù)據(jù)美觀、操作簡單方便數(shù)據(jù)庫數(shù)據(jù)庫能夠做什么?存儲數(shù)據(jù)、檢索數(shù)據(jù)、生成新的數(shù)據(jù)統(tǒng)一存儲數(shù)據(jù)的方法第一種方法:用大腦來記住數(shù)據(jù)第二種方法:寫在紙上第三種方法:寫在計算機的內(nèi)存中第四種方法:寫成磁盤文件……存儲數(shù)據(jù)的方法存儲大量數(shù)據(jù),方便檢索和訪問保持數(shù)據(jù)信息的一致、完整共享和安全通過組合分析,產(chǎn)生新的有用信息存儲大量數(shù)據(jù),方便檢索和訪問

1.1數(shù)據(jù)庫基礎知識數(shù)據(jù)(Data):是信息的載體;是描述事物的符號記錄,信息是數(shù)據(jù)的內(nèi)容。

符號:數(shù)字、文字、圖形、聲音、語音等在計算機中,為了處理現(xiàn)實世界中的事物,可以抽象出人們感興趣的事物特征,組成一個記錄來描述該事物。1.1.1信息、數(shù)據(jù)與數(shù)據(jù)管理1.1數(shù)據(jù)庫基礎知識數(shù)據(jù)(Data):在計算機D文字、數(shù)字、圖形、圖像、聲音等數(shù)字、文字數(shù)據(jù)庫文件PIWordExcelPowerPointFrontPagePhotoshopC,VB.NETAccess,VFPSQLServer文檔(.doc)工作簿(.xls)文稿(.ppt)網(wǎng)頁(.html)圖片(.bmp)數(shù)字、文字查詢結果或報表DataInformationProcessingD文字、數(shù)字、圖形、圖像、聲音等PIWord文檔(.doc)數(shù)據(jù)人:(李四,男,1988,2008,計算機系)(李四,男,1988,180,75,80,120)數(shù)據(jù)人:(李四,男,1988,2008,計算機系數(shù)據(jù)管理數(shù)據(jù)的處理是指對各種數(shù)據(jù)進行收集、存儲、加工和傳播的一系列活動的集合。而數(shù)據(jù)管理是指對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護等操作。它是數(shù)據(jù)處理的中心問題。數(shù)據(jù)管理數(shù)據(jù)的處理是指對各種數(shù)據(jù)進行收集1.1.2數(shù)據(jù)管理技術的發(fā)展人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段背景應用背景科學計算科學計算、管理大規(guī)模管理硬件背景無直接存取存儲設備磁盤、磁鼓大容量磁盤軟件背景沒有操作系統(tǒng)有文件系統(tǒng)有數(shù)據(jù)庫管理系統(tǒng)處理方式批處理聯(lián)機實時處理、批處理聯(lián)機實時處理、分布處理、批處理特點數(shù)據(jù)的管理者用戶(程序員)文件系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)面向的對象某一應用程序某一應用現(xiàn)實世界數(shù)據(jù)的共享程度無共享,冗余度極大共享性差,冗余度大共享性高,冗余度小數(shù)據(jù)的獨立性不獨立,完全依賴于程序獨立性差具有高度的物理獨立性和一定的邏輯獨立性數(shù)據(jù)的結構化無結構記錄內(nèi)有結構、整體無結構整體結構化,用數(shù)據(jù)模型描述數(shù)據(jù)控制能力應用程序自己控制應用程序自己控制由DBMS提供數(shù)據(jù)安全性、完整性、并發(fā)控制和恢復能力數(shù)據(jù)管理三階段的比較1.1.2數(shù)據(jù)管理技術的發(fā)展人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫數(shù)據(jù)庫的發(fā)展史萌芽階段——文件系統(tǒng)使用磁盤文件來存儲數(shù)據(jù)初級階段——第一代數(shù)據(jù)庫出現(xiàn)了網(wǎng)狀模型、層次模型的數(shù)據(jù)庫中級階段——第二代數(shù)據(jù)庫關系型數(shù)據(jù)庫和結構化查詢語言高級階段——新一代數(shù)據(jù)庫“關系-對象”型數(shù)據(jù)庫數(shù)據(jù)庫的發(fā)展史萌芽階段——文件系統(tǒng)OracleOracle公司的產(chǎn)品“關系-對象”型數(shù)據(jù)庫產(chǎn)品免費、服務收費SQLServer針對不同用戶群體的五個特殊的版本易用性好DB2IBM公司的產(chǎn)品支持多操作系統(tǒng)、多種類型的硬件和設備時下流行的數(shù)據(jù)庫Oracle時下流行的數(shù)據(jù)庫1.1.3數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫(DataBase,簡稱DB):

長期存放在計算機內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。特點數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲較小的冗余度較高的數(shù)據(jù)獨立性和易擴充性為各種用戶共享1.1.3數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫(Da

數(shù)據(jù)庫管理系統(tǒng)概念數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,簡稱DBMS)位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理軟件,是幫助用戶創(chuàng)建、維護和使用數(shù)據(jù)庫的軟件系統(tǒng)。功能:數(shù)據(jù)定義—數(shù)據(jù)定義語言(DataDefinitionLanguage,DDL)數(shù)據(jù)操縱—數(shù)據(jù)操縱語言(DataManipulationLanguage,DML)數(shù)據(jù)庫的運行與管理數(shù)據(jù)庫管理系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,簡稱DBS):

計算機系統(tǒng)中引入數(shù)據(jù)庫技術后的系統(tǒng)。組成:數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(開發(fā)工具)應用系統(tǒng)數(shù)據(jù)庫管理員(DataBaseAdministrator,DBA)用戶數(shù)據(jù)庫系統(tǒng)概念數(shù)據(jù)庫系統(tǒng)構成數(shù)據(jù)庫操作系統(tǒng)數(shù)據(jù)庫管理員數(shù)據(jù)庫管理系統(tǒng)應用開發(fā)工具應用系統(tǒng)用戶用戶用戶數(shù)據(jù)庫系統(tǒng)構成數(shù)據(jù)庫操作系統(tǒng)數(shù)據(jù)庫管理員數(shù)據(jù)庫管理數(shù)據(jù)庫在計算機系統(tǒng)中的地位數(shù)據(jù)庫在計算機系統(tǒng)中的地位

1.1.4數(shù)據(jù)模型概念模型是現(xiàn)實世界特征的模擬和抽象。數(shù)據(jù)模型(DataModel)是現(xiàn)實世界數(shù)據(jù)特征的抽象,是對現(xiàn)實世界的模擬。數(shù)據(jù)模型應滿足三方面的要求:能比較真實地模擬現(xiàn)實世界容易為人所理解便于在計算機世界實現(xiàn)1.1.4數(shù)據(jù)模型概念數(shù)據(jù)模型可以分為兩類:

概念模型—按用戶的觀點來對數(shù)據(jù)和信息進行抽象

結構數(shù)據(jù)模型—按計算機系統(tǒng)的觀點對數(shù)據(jù)建模數(shù)據(jù)模型可以分為兩類:

信息世界的基本概念(1)實體(Entity):

客觀存在并且可以相互區(qū)別的事物

現(xiàn)實世界中客觀存在的、可以被描述事物都是“實體”信息世界的基本概念(1)實體(Entity):

信息世界的基本概念(2)屬性(Attribute):

實體所具有的某一特性稱為實體的屬性

(3)關鍵字(Key):

唯一標識實體的屬性集稱為關鍵字。碼

(4)域(Domain):

屬性的取值范圍稱為該屬性的域信息世界的基本概念(2)屬性(Attribute信息世界的基本概念(5)實體型(EntityType):

具有相同屬性的實體稱為同型實體,用實體名及其屬性名的集合來抽象和刻畫同類實體,稱為實體型。

職工(職工編號,姓名,性別,職稱,學歷,工作時間)

(6)實體集(EntitySet):

同型實體的集合稱為實體集信息世界的基本概念(5)實體型(Entity信息世界的基本概念(7)聯(lián)系(Relationship):

實體型內(nèi)部各屬性之間的聯(lián)系以及實體型之間的聯(lián)系.

一對一聯(lián)系(1:1)

一對多聯(lián)系(1:m)

多對多聯(lián)系(m:n)

信息世界的基本概念(7)聯(lián)系(Relations概念模型的表示方法實體-聯(lián)系方法(Entity-Relationship):

該方法用E-R圖來描述現(xiàn)實世界的概念模型

實體型:用矩形表示,矩形框內(nèi)寫實體名

屬性:用橢圓形表示,框內(nèi)寫屬性名,用無向邊將屬性與實體連起來

聯(lián)系:用菱形表示,框內(nèi)寫聯(lián)系名,用無向邊與有關實體連接起來,同時在無向邊上注明聯(lián)系類型。聯(lián)系的屬性也要用無向邊與聯(lián)系連接起來。概念模型的表示方法實體-聯(lián)系方法(Entity-

E-R圖舉例:學生選課管理E-R圖性別教材編號主編教材課程學生選用選課教材名出版社單價課程號課程名學時數(shù)學分課程性質(zhì)課程成績學號姓名出生年月入學時間班級11mnE-R圖舉例:學生選課管理E-R圖性別教材編號主常見的數(shù)據(jù)模型●層次模型(HierarchicalModel)

●網(wǎng)狀模型(NetworkModel)

●關系模型(RelationalModel)

●面向?qū)ο竽P停∣bjectOrientedModel)關系模型的優(yōu)點:

●建立在嚴格的數(shù)學概念基礎上

●概念單一

●存取路徑對用戶透明常見的數(shù)據(jù)模型●層次模型(Hierarchi1.層次模型

層次模型(HierarchicalModel)是一種以記錄某一事物的類型為根節(jié)點的有向樹。優(yōu)點:不同層次之間的關聯(lián)性直接而且簡單。缺點:

由于數(shù)據(jù)縱向發(fā)展,橫向關系難以建立,數(shù)據(jù)可能會重復出現(xiàn),造成管理維護的不便。1.層次模型層次模型(HierarchicalMod網(wǎng)狀模型是層次模型的擴展,表示多個從屬關系的層次結構,呈現(xiàn)一種交叉關系的網(wǎng)狀結構。2.網(wǎng)狀模型

特點:可以有多個根記錄,一個子記錄可以有多個父記錄??梢员硎緳M向復雜的聯(lián)系。網(wǎng)狀模型是層次模型的擴展,表示多個從屬關系的層次結構,呈現(xiàn)一優(yōu)點:很容易反映實體之間的關聯(lián),同時還避免了數(shù)據(jù)的重復性;缺點:關聯(lián)錯綜復雜,當數(shù)據(jù)庫逐漸增多時,將很難對結構中的關聯(lián)性進行維護,尤其是數(shù)據(jù)庫越來越大時。優(yōu)點:3.關系模型

目前關系模型是最重要的一種數(shù)據(jù)模型。關系數(shù)據(jù)系統(tǒng)采用關系模型為數(shù)據(jù)的組織方式,SQLServer2005數(shù)據(jù)庫就是基于關系模型建立的。關系模型具有如下優(yōu)點:關系模型建立在嚴格的數(shù)學概念基礎上。關系模型的概念單一,無論實體還是實體之間的聯(lián)系都用關系表示,對數(shù)據(jù)的檢索結果也是關系。關系模型的存取路徑對用戶透明。3.關系模型目前關系模型是最重要的一種數(shù)據(jù)模型

1.1.5數(shù)據(jù)庫系統(tǒng)的體系結構數(shù)據(jù)庫的三級模式兩級映像結構

模式(Schema):也稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述外模式(ExternalSchema):

又稱子模式或用戶模式,是模式的子集,是數(shù)據(jù)的局部邏輯結構,也是數(shù)據(jù)庫用戶看到的數(shù)據(jù)視圖內(nèi)模式(InternalSchema):

也稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫中的內(nèi)部表示,即數(shù)據(jù)的物理結構和存儲方式描述1.1.5數(shù)據(jù)庫系統(tǒng)的體系結構數(shù)據(jù)庫的三級模式兩數(shù)據(jù)庫的三級模式兩級映像結構數(shù)據(jù)庫內(nèi)模式模式外模式A外模式B應用1應用2應用3應用4應用5由數(shù)據(jù)庫管理員建立和維護模式/內(nèi)模式映像外模式/模式映像外模式/模式映像數(shù)據(jù)庫管理系統(tǒng)操作系統(tǒng)數(shù)據(jù)庫的三級模式兩級映像結構數(shù)據(jù)庫內(nèi)模式模式外模數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性兩級映像:外模式/模式映像存在外模式與模式之間的某種對應關系模式/內(nèi)模式映像全局邏輯結構與存儲結構之間的對應關系數(shù)據(jù)的物理獨立性和邏輯獨立性數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性兩級映像:數(shù)據(jù)的物理獨立性和1.2關系數(shù)據(jù)庫1.2.1關系模型1970年由美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數(shù)據(jù)庫系統(tǒng)的關系模型

1981年ACM圖靈獎組成:數(shù)據(jù)結構、關系操作、關系的完整性1.2關系數(shù)據(jù)庫1.2.1關系模型1970年由美國IBM關系模型的基本術語(1)關系模型(RelationalModel):

用二維表格結構來表示實體及實體間聯(lián)系的模型

(2)屬性(Attribute)和值域(Domain):

在二維表中的列稱為屬性,列值稱為屬性值,屬性值的取值范圍稱為值域

(3)關系模式(RelationalSchema):

在二維表格中行的定義(記錄的型)關系模型的基本術語(1)關系模型(Relatio關系模型的基本術語(4)元組(Tuple)與關系:

二維表格中的行稱為元組,元組的集合稱為關系(5)關鍵字(Key)或碼:

能夠用來唯一標識元組的屬性(或?qū)傩越M合)稱為關鍵字或碼。(6)候選關鍵字或候選碼(CandidateKey):

如果在一個關系中,存在著多個屬性(或?qū)傩越M合)都能用來唯一標識該關系的元組,這些屬性或?qū)傩缘慕M合都稱為該關系的候選關鍵字或候選碼。

主關鍵字或主碼(PrimaryKey)關系模型的基本術語(4)元組(Tuple)與關系關系模型的基本術語(7)主關鍵字或主碼(PrimaryKey)主屬性(PrimeAttribute):

包含在任何一個候選碼中的屬性

(8)非主屬性或非關鍵字屬性(NonPrimeAttribute):

關系中不能組成關鍵字的屬性關系模型的基本術語(7)主關鍵字或主碼(Prima關系模型的基本術語(9)外部關鍵字或外鍵(ForeignKey):

當關系中的某個屬性或?qū)傩越M合雖不是該關系的關鍵字或只是關鍵字的一部分,但卻是另一個關系的關鍵字時,稱該屬性或?qū)傩越M合為這個關系的外部關鍵字或外鍵。兩個關系:

選課(學號,課程號,成績)

學生(學號,姓名,性別,出生日期)關系模型的基本術語(9)外部關鍵字或外鍵(For

關系模型的基本術語(10)從表與主表:

以某屬性為主鍵的表稱為主表,以此屬性為外鍵的表稱為從表。兩個表:

學生(學號,姓名,性別,出生日期)選課(學號,課程號,成績)

關系模型的基本術語(10)從表與主表:

以某屬關系模型的數(shù)據(jù)結構--二維表格學生表學號姓名性別出生日期系部代碼入學時間010101001001張斌男1970-5-4012001-9-18010102002001周紅瑜女1972-7-8012001-9-18010201001001賈凌云男1974-9-1022002-9-18關系屬性(列)關系名關系模式主碼關系模型的數(shù)據(jù)結構--二維表格學生表學號姓名性別編號姓名獎懲類型獎懲情況備注1曹操獎勵三好學生德智體全面發(fā)展2司馬懿獎勵三好學生班級管理出色班級管理出色11司馬懿2德智體全面發(fā)展11曹操1備注獎懲情況獎懲類型姓名編號處分2獎勵1獎懲類型獎懲類型編碼優(yōu)秀學生干部2三好學生1班級獎勵情況編碼存在冗余為減少數(shù)據(jù)查找的麻煩,允許數(shù)據(jù)有一定的冗余數(shù)據(jù)完整性編號姓名獎懲類型獎懲情況備注1曹操獎勵三好學生德智體全面發(fā)展序號姓名家庭住址班級12張三12北京新村高一(二)13李四123,華龍小區(qū).高一(三)15王五32,前進大廈高三(四)12錢六42,和平花苑高二(五)13趙七12,新風小區(qū)高二(六)15王五33,金光大道高一(四)不同的地址!存在不正確、不準確的數(shù)據(jù),數(shù)據(jù)庫“失去了完整性”姓名數(shù)據(jù)完整性序號姓名家庭住址班級12張三12北京新村高一(二)13李四關系模型的數(shù)據(jù)完整性數(shù)據(jù)完整性指關系模型中數(shù)據(jù)的正確性和一致性●實體完整性(EntityIntegrity)

要求關系中的元組在組成主鍵的屬性列上的值不能為空

●參照完整性(ReferenceIntegrity)

要求不能在從表中引用主表中不存在的元組

●用戶自定義完整性(User-definedIntegrity)

根據(jù)應用領域的需要,由用戶定義的約束條件,體現(xiàn)了具體應用領域的語義約束關系模型的數(shù)據(jù)完整性數(shù)據(jù)完整性指關系模型中數(shù)據(jù)的關系操作關系操作的基礎是關系代數(shù)

關系代數(shù)是一種抽象的查詢語言,與具體的DBMS中實現(xiàn)語言并不完全一致關系操作的特點--集合操作

操作的對象和結果都是集合,稱為一次一個集合的方式(set-at-a-time)

非關系數(shù)據(jù)模型:

一次一記錄(record-at-a-time)關系操作關系操作的基礎是關系代數(shù)

關系代數(shù)是一關系操作查詢操作(query)選擇(Select)投影(Project)連接(Join)除(Divide)并(Union)交(Intersection)差(Difference)更新操作(update)增加(Insert)刪除(Delete)修改(Update)關系操作查詢操作(query)更新操作(updatSQL(StructuredQueryLanguage)SQL是關系數(shù)據(jù)庫的標準語言,它提供了數(shù)據(jù)定義、數(shù)據(jù)查詢和訪問控制功能:數(shù)據(jù)定義:

定義基本表:

CREATETABLE,DROPTABLE,ALTERTABLE

定義視圖:

CREATEVIEW,DROPVIEW

定義索引:

CREATEINDEX,DROPINDEXSQL(StructuredQueryLanguage)SQL(StructuredQueryLanguage)數(shù)據(jù)查詢功能:

SELECT

數(shù)據(jù)更新功能:

INSERT,DELETE,UPDATE

訪問控制功能:

GRANT,REVOKE

嵌入式使用方式:SQL(StructuredQueryLanguage)

1.2.2關系數(shù)據(jù)理論1971年由E.F.Codd提出了規(guī)范化理論

關系數(shù)據(jù)理論就是指導產(chǎn)生一個具體確定的、好的數(shù)據(jù)庫模式的理論體系針對一個具體的數(shù)據(jù)庫應用問題,應該構造幾個關系模式?每個關系由哪些屬性組成?即如何構造適合于它的數(shù)據(jù)模式?數(shù)據(jù)庫邏輯設計問題1.2.2關系數(shù)據(jù)理論1971年由E.F.C問題的提出:學生關系:學生(學號,姓名,性別,出生日期,入學時間,系部代碼)

課程關系:課程(課程號,課程名,學時數(shù),學分)

選課關系:選課(學號,課程號,成績)只有一個關系模式:

學生—選課–課程(學號,姓名,性別,出生日期,入學時間,系部代碼,課程號,課程名,學時數(shù),學分,成績)

有三個關系模式:

學生(學號,姓名,性別,出生日期,入學時間,系部代碼)

課程(課程號,課程名,學時數(shù),學分)

選課(學號,課程號,成績)問題的提出:學生關系:學生(學號,姓名,性別,出第一種設計可能存在的問題:數(shù)據(jù)冗余,修改異常,插入異常,刪除異常學號姓名性別...課程號課程名學時數(shù)學分成績2004001張斌男0001數(shù)學804892004002周紅瑜女0001數(shù)學804912004003賈凌云男0001數(shù)學804762004001張斌男0002外語753902004002周紅瑜女0002外語753782004003賈凌云男0002外語753702004001張斌男0003數(shù)據(jù)庫602772004002周紅瑜女0003數(shù)據(jù)庫602842004003賈凌云男0003數(shù)據(jù)庫60279第一種設計可能存在的問題:數(shù)據(jù)冗余,修改異常,插關系模式的規(guī)范化(1)第一范式

如果關系模式R的每一個屬性都是不可再分的,則稱R為第一范式,記為:學號姓名性別出生日期家庭成員父親母親母親父親出生日期性別姓名學號關系模式的規(guī)范化(1)第一范式

如果關系模式第二范式(2)第二范式

如果關系模式R是第一范式,且每個非主屬性都完全函數(shù)依賴于關鍵字,則稱R為滿足第二范式的模式

記為:選課(學號,課程號,系部代碼,出生日期,成績)成績學號課程號系名出生日期成績學號課程號學號系名出生日期第二范式(2)第二范式

如果關系第三范式(3)第三范式

如果關系模式R是第二范式,且沒有一個非關鍵字屬性是傳遞函數(shù)依賴于候選關鍵字屬性,則稱R為滿足第三范式的模式。記為:學號系名系宿舍樓學生(學號,姓名,性別,出生日期,入學時間, 系名,系宿舍樓)學號系名系名系宿舍樓第三范式(3)第三范式

如果關系模式R是第二范式,關系規(guī)范化小節(jié)2NF3NFBCNF4NF1NF消除決定因素非關鍵字的非平凡函數(shù)依賴消除非主屬性對關鍵字的部分函數(shù)依賴消除非主屬性對關鍵字的傳遞函數(shù)依賴消除主屬性對關鍵字的部分和傳遞函數(shù)依賴消除非平凡且非函數(shù)依賴的多值依賴關系規(guī)范化小節(jié)2NF3NFBCNF4NF需求分析概念設計邏輯設計物理設計應用開發(fā)系統(tǒng)維護系統(tǒng)綜述設計基礎數(shù)據(jù)模型概念模型關系模型系統(tǒng)安全數(shù)據(jù)維護概念模型轉(zhuǎn)換關系模型關系規(guī)范化創(chuàng)建數(shù)據(jù)庫創(chuàng)建基本表創(chuàng)建索引數(shù)據(jù)查詢創(chuàng)建視圖程序設計SQLServer2008平臺T-SQL語言查詢編輯器學習內(nèi)容在數(shù)據(jù)庫系統(tǒng)開發(fā)中的位置圖

1.3數(shù)據(jù)庫設計需求分析概念設計邏輯設計物理設計應用開發(fā)系統(tǒng)維護系統(tǒng)綜述設計1.3.1數(shù)據(jù)庫設計的任務、特點和步驟(1)數(shù)據(jù)庫設計的任務

針對一個給定的應用環(huán)境,構造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應用系統(tǒng),使之能有效地收集、存儲、操作和管理數(shù)據(jù),滿足用戶的各種需求1.3.1數(shù)據(jù)庫設計的任務、特點和步驟(1)數(shù)據(jù)庫設計的任(2)數(shù)據(jù)庫設計的特點

數(shù)據(jù)庫設計既是一項涉及多學科的綜合性技術,又是一項龐大的工程項目。數(shù)據(jù)庫建設是硬件、軟件和技術與管理的界面的結合;整個設計過程要把結構(數(shù)據(jù))設計和行為(處理)設計密切結合起來。(2)數(shù)據(jù)庫設計的特點數(shù)據(jù)庫設計既是一項涉(3)數(shù)據(jù)庫設計的步驟需求分析概念結構設計邏輯結構設計物理結構設計數(shù)據(jù)庫實施數(shù)據(jù)庫運行和維護(3)數(shù)據(jù)庫設計的步驟需求分析數(shù)據(jù)庫設計的基本步驟概念設計邏輯

溫馨提示

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

評論

0/150

提交評論