




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
7.1數(shù)據(jù)庫系統(tǒng)概述7.2數(shù)據(jù)庫的建立和維護(hù)7.3數(shù)據(jù)庫查詢7.4
窗體、報(bào)表第七章數(shù)據(jù)庫基礎(chǔ)典型案例無紙化通用考試系統(tǒng)
大學(xué)計(jì)算機(jī)基礎(chǔ)VisualBasic程序設(shè)計(jì)
C/C++程序設(shè)計(jì)軟件技術(shù)基礎(chǔ)應(yīng)用程序數(shù)據(jù)庫管理系統(tǒng)VBVC++PowerBuilder
Delphi
ACCESSSQLSERVERORACLEFOXPROSQL命令數(shù)據(jù)庫引摯數(shù)據(jù)庫信息化社會離不開信息系統(tǒng) 信息系統(tǒng)的核心和基礎(chǔ)是數(shù)據(jù)庫2計(jì)算機(jī)基礎(chǔ)教育網(wǎng)站
http://IEHTM、ASP客戶機(jī)服務(wù)器SQL命令數(shù)據(jù)庫發(fā)出請求響應(yīng)請求數(shù)據(jù)37.1.1常用術(shù)語7.1.2數(shù)據(jù)庫技術(shù)的產(chǎn)生和發(fā)展7.1.3數(shù)據(jù)模型7.1.4
常見的數(shù)據(jù)庫系統(tǒng)及其開發(fā)工具7.1數(shù)據(jù)庫系概述7.1.1常用術(shù)語1.數(shù)據(jù)庫(DataBase,DB)長期保存在計(jì)算機(jī)外存上的、有結(jié)構(gòu)的、可共享的數(shù)據(jù)集合。2.數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,DBMS)對數(shù)據(jù)庫進(jìn)行管理的軟件系統(tǒng)。數(shù)據(jù)庫的一切操作,如查詢、更新、插入、刪除以及各種控制,都是通過DBMS進(jìn)行的。DBMS是位于用戶(或應(yīng)用程序)和操作系統(tǒng)之間的軟件。借助于操作系統(tǒng)實(shí)現(xiàn)對數(shù)據(jù)的存儲和管理,使數(shù)據(jù)能被各種不同的用戶所共享,DBMS提供給用戶可使用的數(shù)據(jù)庫語言。3.應(yīng)用程序(DataBaseSystem,DBS)利用各種開發(fā)工具開發(fā)的、滿足特定應(yīng)用環(huán)境的數(shù)據(jù)庫應(yīng)用程序。用戶應(yīng)用程序DBMS操作系統(tǒng)數(shù)據(jù)庫DB數(shù)據(jù)庫系統(tǒng)57.1.1常用術(shù)語4.數(shù)據(jù)庫系統(tǒng)相關(guān)人員數(shù)據(jù)庫管理員應(yīng)用程序開發(fā)人員最終用戶5.數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,DBS)由硬件系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫應(yīng)用程序、數(shù)據(jù)庫系統(tǒng)相關(guān)人員等構(gòu)成的人-機(jī)系統(tǒng)。數(shù)據(jù)庫產(chǎn)品(一整套數(shù)據(jù)庫應(yīng)用解決方案
)桌面型數(shù)據(jù)庫網(wǎng)絡(luò)數(shù)據(jù)庫MSAccessSQLServerOracleMySql67.1.2數(shù)據(jù)庫技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)管理技術(shù)經(jīng)歷了三個(gè)發(fā)展階段人工管理階段文件管理階段數(shù)據(jù)庫系統(tǒng)階段71.人工管理階段時(shí)間:20世紀(jì)50年代中期以前
硬件:只有卡片、紙帶、磁帶等存儲設(shè)備軟件:沒有操作系統(tǒng),沒有進(jìn)行數(shù)據(jù)管理的軟件應(yīng)用:以科學(xué)計(jì)算為目的特點(diǎn):程序和數(shù)據(jù)放在一起數(shù)據(jù)不能共享特征圖程序1數(shù)據(jù)1程序2數(shù)據(jù)2程序n數(shù)據(jù)n……8人工管理階段數(shù)據(jù)管理示例例:兩個(gè)C語言程序,分別求10個(gè)數(shù)據(jù)之和和最大值。 程序與數(shù)據(jù)放在一起,數(shù)據(jù)沒有能夠共享92.文件系統(tǒng)階段時(shí)間:20世紀(jì)60年代中期硬件:磁帶、磁盤等大容量存儲設(shè)備軟件:有了操作系統(tǒng)應(yīng)用:不僅用于科學(xué)計(jì)算,還用于數(shù)據(jù)管理.特點(diǎn):程序與數(shù)據(jù)分離數(shù)據(jù)有一定的獨(dú)立性實(shí)現(xiàn)了以文件為單位的數(shù)據(jù)共享特征圖數(shù)據(jù)文件1…文件管理系統(tǒng)數(shù)據(jù)文件n應(yīng)用程序1應(yīng)用程序2應(yīng)用程序n…數(shù)據(jù)文件210文件系統(tǒng)階段數(shù)據(jù)管理示例上例用文件實(shí)現(xiàn)113.數(shù)據(jù)庫系統(tǒng)階段時(shí)間:20世紀(jì)60年代后期硬件:出現(xiàn)了大容量且價(jià)格低廉的磁盤軟件:有了數(shù)據(jù)庫管理系統(tǒng)DBMS應(yīng)用:各個(gè)方面.特點(diǎn):數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)共享性高,冗余小數(shù)據(jù)獨(dú)立性高數(shù)據(jù)由DBMS統(tǒng)一管理控制為用戶提供了友好的接口特征圖12數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)管理示例解決了數(shù)據(jù)的獨(dú)立性問題,實(shí)現(xiàn)數(shù)據(jù)的統(tǒng)一管理,
達(dá)到數(shù)據(jù)共享的目的
求和:SELECTMax(Num)FROMData 求最大值:SELECTAvg(Num)FROMData13數(shù)據(jù)庫系統(tǒng)的特點(diǎn)(1)采用一定的數(shù)據(jù)模型,最大限度地減少數(shù)據(jù)的冗余(2)最低的冗余度(3)有較高的數(shù)據(jù)獨(dú)立性用戶面對的是簡單的邏輯結(jié)構(gòu)操作而不涉及數(shù)據(jù)具體的物理存儲結(jié)構(gòu)(4)安全性設(shè)置用戶的使用權(quán)限在數(shù)據(jù)庫被破壞時(shí),系統(tǒng)可把數(shù)據(jù)庫恢復(fù)到可用狀態(tài)。(5)完整性一些完整性檢驗(yàn)以確保數(shù)據(jù)符合某些規(guī)則,保證數(shù)據(jù)庫中數(shù)據(jù)始終是正確的。14數(shù)據(jù)庫倉庫系統(tǒng)數(shù)據(jù)倉庫技術(shù)是目前數(shù)據(jù)處理中發(fā)展十分迅速的一個(gè)分支。所謂“數(shù)據(jù)倉庫”,就是一種長期數(shù)據(jù)存儲,這些數(shù)據(jù)來自于多個(gè)異種數(shù)據(jù)源。實(shí)現(xiàn)多維數(shù)據(jù)分析,以便向管理決策提供支持。數(shù)據(jù)倉庫系統(tǒng)允許將各種應(yīng)用系統(tǒng)集成在一起,為統(tǒng)一的歷史數(shù)據(jù)分析提供堅(jiān)實(shí)的平臺,對信息處理進(jìn)行支持。目前數(shù)據(jù)倉庫已經(jīng)成為數(shù)據(jù)分析和聯(lián)機(jī)分析處理日趨重要的平臺。15數(shù)據(jù)庫倉庫系統(tǒng)數(shù)據(jù)倉庫的主要特征如下:(1)面向主題性:圍繞某一主題建模和分析;(2)集成性:將多個(gè)異種數(shù)據(jù)源以及事務(wù)記錄集成在一起;(3)時(shí)變性:數(shù)據(jù)存儲從歷史的角度提供信息;(4)非易失性:總是物理地分離存放數(shù)據(jù)。16數(shù)據(jù)庫倉庫系統(tǒng)和數(shù)據(jù)庫的區(qū)別(1)面向的用戶不同。數(shù)據(jù)庫系統(tǒng)面向使用單位的低層人員,用于日常數(shù)據(jù)的分析和處理;數(shù)據(jù)倉庫系統(tǒng)面向使用單位決策人員,提供決策支持。(2)數(shù)據(jù)內(nèi)容不同。數(shù)據(jù)庫系統(tǒng)存儲和管理的是當(dāng)前的數(shù)據(jù);數(shù)據(jù)倉庫系統(tǒng)存儲的是長期積累的歷史數(shù)據(jù)。
17數(shù)據(jù)庫倉庫系統(tǒng)和數(shù)據(jù)庫的區(qū)別(3)數(shù)據(jù)來源不同。數(shù)據(jù)庫的數(shù)據(jù)一般來源于同種數(shù)據(jù)源,而數(shù)據(jù)倉庫的數(shù)據(jù)可以來源于多個(gè)異種數(shù)據(jù)源。(4)數(shù)據(jù)的操作不同。數(shù)據(jù)庫系統(tǒng)提供了執(zhí)行聯(lián)機(jī)事務(wù)和查詢處理(OLTP,On-LineTransactionProcessing)系統(tǒng)。數(shù)據(jù)倉庫系統(tǒng)主要提供了數(shù)據(jù)分析和決策支持(OLAP,On-LineAnalyticalProcessing)系統(tǒng),實(shí)現(xiàn)數(shù)據(jù)挖掘和知識發(fā)現(xiàn)。187.1.3數(shù)據(jù)模型
數(shù)據(jù)模型1數(shù)據(jù)庫不僅要反映數(shù)據(jù)本身的內(nèi)容,而且要反映數(shù)據(jù)之間的聯(lián)系。由于計(jì)算機(jī)不可能直接處理現(xiàn)實(shí)世界中的具體事物,所以人們必須首先把具體事物轉(zhuǎn)換成計(jì)算機(jī)能夠處理的數(shù)據(jù)。在數(shù)據(jù)庫中用數(shù)據(jù)模型這個(gè)工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講,數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬,是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象?,F(xiàn)有的數(shù)據(jù)庫系統(tǒng)均是基于某種數(shù)據(jù)模型的。因此,數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ)。各種計(jì)算機(jī)上實(shí)現(xiàn)的DBMS軟件都是基于某種數(shù)據(jù)模型的。197.1.3數(shù)據(jù)模型
數(shù)據(jù)模型應(yīng)滿足三方面要求:1)一是能比較真實(shí)地模擬現(xiàn)實(shí)世界;2)二是容易為人所理解;3)三是便于在計(jì)算機(jī)上實(shí)現(xiàn)。一種數(shù)據(jù)模型要很好地滿足這三方面的要求在目前尚很難。在數(shù)據(jù)庫系統(tǒng)中,針對不同的使用對象和應(yīng)用目的采用不同的數(shù)據(jù)模型。不同的數(shù)據(jù)模型實(shí)際上是提供給我們模型化數(shù)據(jù)和信息的不同工具。207.1.3數(shù)據(jù)模型
根據(jù)模型應(yīng)用的目的不同,可以將這些模型劃分為兩類,它們分屬于兩個(gè)不同的層次。1)第一類模型是概念模型(也稱信息模型)它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)庫設(shè)計(jì)。2)另一類是數(shù)據(jù)模型主要包括網(wǎng)狀模型、層次模型、關(guān)系模型,新興的數(shù)據(jù)庫技術(shù)上還使用了面向?qū)ο蟮哪P偷?,它是按?jì)算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,主要用于DBMS的實(shí)現(xiàn)。217.1.3數(shù)據(jù)模型
為了把現(xiàn)實(shí)世界中的具體事物抽象、組織為某一DBMS支持的數(shù)據(jù)模型,人們常常首先將現(xiàn)實(shí)世界抽象為信息世界,然后將信息世界轉(zhuǎn)換為機(jī)器世界。也就是說,首先把現(xiàn)實(shí)世界中的客觀對象抽象為某一種信息結(jié)構(gòu),這種信息結(jié)構(gòu)并不依賴于具體的計(jì)算機(jī)系統(tǒng),不是某一個(gè)DBMS支持的數(shù)據(jù)模型,而是概念級的模型,然后把概念級的模型轉(zhuǎn)換為計(jì)算機(jī)上某一DBMS支持的數(shù)據(jù)模型。227.1.3數(shù)據(jù)模型
三種重要的數(shù)據(jù)模型①層次模型用樹型結(jié)構(gòu)來表示實(shí)體及實(shí)體間的聯(lián)系
例如:1968年,IBM公司的IMS(InformationManagementSystem)②網(wǎng)狀模型用網(wǎng)狀結(jié)構(gòu)來表示實(shí)體及實(shí)體間的聯(lián)系
例如:DBTG系統(tǒng)
注:1969年美國CODASYL組織提出了一份“DBTG報(bào)告”,
以后根據(jù)DBTG報(bào)告實(shí)現(xiàn)的系統(tǒng)一般稱為DBTG系統(tǒng)③關(guān)系模型用一組二維表表示實(shí)體及實(shí)體間的關(guān)系
例如:MicrosoftAccess
注:理論基礎(chǔ)是1970年IBM公司研究人員E.F.Codd發(fā)表的大量論文。目前應(yīng)用最廣泛的是關(guān)系數(shù)據(jù)模型23關(guān)系模型
關(guān)系模型把世界看作是由實(shí)體(Entity)和聯(lián)系(Relationship)構(gòu)成的。所謂實(shí)體是指現(xiàn)實(shí)世界中具有區(qū)別于其他事物的特征或?qū)傩圆⑴c其他實(shí)體有聯(lián)系的對象。在關(guān)系模型中實(shí)體通常是以表的形式來表現(xiàn)的。表的每一行描述實(shí)體的一個(gè)實(shí)例,表的每一列描述實(shí)體的一個(gè)特征或?qū)傩浴?4關(guān)系模型
聯(lián)系:所謂聯(lián)系是指實(shí)體之間的關(guān)系,即實(shí)體之間的對應(yīng)關(guān)系。聯(lián)系可以分為三種:1)一對一的聯(lián)系。如:一個(gè)班級只有一個(gè)班長,同樣,每個(gè)班長屬于一個(gè)班級,班長→班級為一對一關(guān)系;2)一對多的聯(lián)系。如:每個(gè)班的人有許多個(gè),班級→人為一對多關(guān)系;3)多對多的聯(lián)系。如:每個(gè)人可修多門課程,反之,每門課程可有多人選修,課程→人為多對多聯(lián)系。
25關(guān)系模型Students表屬性名(字段名)屬性值(字段值)男張智忠學(xué)號姓名性別黨員專業(yè)出生年月助學(xué)金990001王濤男No物理82-01-21¥160.00990002莊前女Yes物理82-09-21¥200.00990101丁保華男No數(shù)學(xué)81-04-18¥180.00990102姜沛棋女No數(shù)學(xué)81-12-02¥280.00No數(shù)學(xué)80-08-06¥240.00990201程玲女Yes計(jì)算機(jī)82-11-14¥200.00990202黎敏艷女Yes計(jì)算機(jī)83-02-21¥160.00990103記錄
關(guān)鍵字唯一確定一條記錄
關(guān)系(二維表)值域:{男,女}將數(shù)據(jù)組織成一組二維表格26學(xué)號課程成績990001計(jì)算機(jī)文化基礎(chǔ)82990001高等數(shù)學(xué)76990002計(jì)算機(jī)文化基礎(chǔ)90990101高等數(shù)學(xué)77990102計(jì)算機(jī)文化基礎(chǔ)68990102C/C++程序設(shè)計(jì)85990102大學(xué)英語56990201計(jì)算機(jī)導(dǎo)論87990201高等數(shù)學(xué)67990202計(jì)算機(jī)導(dǎo)論53990203英語71990204計(jì)算機(jī)導(dǎo)論66990204高等數(shù)學(xué)75990204英語82271.術(shù)語
關(guān)系:一個(gè)關(guān)系一張二維表關(guān)系模式:
Students(學(xué)號,姓名,性別,黨員,專業(yè),出生年月,助學(xué)金,照片)
Scores(學(xué)號,課程,成績)記錄:表中的一行屬性(字段):表中的一列關(guān)鍵字:某個(gè)屬性可以惟一地確定記錄主鍵:在實(shí)際的應(yīng)用中只能選擇一個(gè)值域:屬性的取值范圍282.關(guān)系必須規(guī)范化:表中不能再包含表工資表(不滿足關(guān)系模型要求)工號姓名工資應(yīng)發(fā)工資實(shí)發(fā)工資91026王建春1656148897045楊建兵18321764工資表(滿足關(guān)系模型要求)工號姓名應(yīng)發(fā)工資實(shí)發(fā)工資91026王建春1656148897045楊建關(guān)系的種類①基本表如表Students和Scores②查詢表查詢表是查詢結(jié)果表
查詢中生成的臨時(shí)表。③視圖視圖是由基本表或其他
視圖導(dǎo)出的表。學(xué)號姓名課程成績990001王濤計(jì)算機(jī)文化基礎(chǔ)82990001王濤高等數(shù)學(xué)76990002莊前計(jì)算機(jī)文化基礎(chǔ)90990101丁保華高等數(shù)學(xué)77990102姜沛棋計(jì)算機(jī)文化基礎(chǔ)68990102姜沛棋C/C++程序設(shè)計(jì)85990102姜沛棋大學(xué)英語56990201程玲計(jì)算機(jī)導(dǎo)論87990201程玲高等數(shù)學(xué)67990202黎敏艷計(jì)算機(jī)導(dǎo)論53990203鄧倩梅英語71990204楊夢逸計(jì)算機(jī)導(dǎo)論66990204楊夢逸高等數(shù)學(xué)75990204楊夢逸英語82來自表Students和Scores的查詢表
30表間關(guān)系2.一對多關(guān)系3.多對多關(guān)系1.一對一關(guān)系如果對于實(shí)體集A中的每個(gè)實(shí)體,實(shí)體集B中最多有一個(gè)實(shí)體(也可以沒有)與之聯(lián)系,反之亦然,則稱實(shí)體集A與實(shí)體集B具有一對一的關(guān)系。311.一對一關(guān)系3.多對多關(guān)系2.一對多關(guān)系如果對于實(shí)體集A中的每個(gè)實(shí)體,實(shí)體集B中有多個(gè)實(shí)體與之聯(lián)系,反之,對于實(shí)體集B中的每個(gè)實(shí)體,實(shí)體集A中有最多有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B具有一對多的關(guān)系。表間關(guān)系322.一對多關(guān)系1.一對一關(guān)系3.多對多關(guān)系如果對于實(shí)體集A中的每個(gè)實(shí)體,實(shí)體集B中有多個(gè)實(shí)體與之聯(lián)系,反之,對于實(shí)體集B中的每個(gè)實(shí)體,實(shí)體集A中也有多個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B具有多對多的關(guān)系。表間關(guān)系33應(yīng)用程序VBVCPowerBuilder
Delphi
MicrosoftAccessSQLServerOracleVisualFoxProSQL命令數(shù)據(jù)庫常見數(shù)據(jù)庫系統(tǒng)開發(fā)工具:VisualBasicVisualC++PowerBuiderDelphi常見的數(shù)據(jù)庫管理系統(tǒng):MicrosoftAccessSQLServerOracleVisualFoxPro常見的數(shù)據(jù)庫應(yīng)用系統(tǒng)及開發(fā)工具34數(shù)據(jù)庫系統(tǒng)運(yùn)行模式:客戶機(jī)/服務(wù)器模式(Client/Server,C/S
)瀏覽器/服務(wù)器模式(Browser/Server,B/S)1.C/S模式例如:OutlookExpressQQ大智慧股票軟件應(yīng)用:基于行業(yè)的數(shù)據(jù)庫應(yīng)用系統(tǒng)7.1.4數(shù)據(jù)庫系統(tǒng)及其開發(fā)技術(shù)35應(yīng)用程序VBVCPowerBuilder
Delphi
MicrosoftAccessSQLServerOracleVisualFoxProSQL命令數(shù)據(jù)庫常見數(shù)據(jù)庫系統(tǒng)開發(fā)工具:VisualBasicVisualC++PowerBuiderDelphi常見的數(shù)據(jù)庫管理系統(tǒng):MicrosoftAccessSQLServerOracleVisualFoxPro常見的數(shù)據(jù)庫應(yīng)用系統(tǒng)及開發(fā)工具362.瀏覽器/服務(wù)器模式例如:IE收到郵件新浪上查看股票信息
Internet上的購物系統(tǒng)、訂票系統(tǒng)應(yīng)用:特別適合非特定的用戶開發(fā)技術(shù):ASPPHPJSPASP.NET
37兩種模式比較各有其優(yōu)缺點(diǎn)B/S模式可以認(rèn)為是C/S模式的一種特例
C/S模式缺點(diǎn):C/S模式維護(hù)、升級煩瑣優(yōu)點(diǎn):響應(yīng)速度快,功能完善B/S模式
缺點(diǎn):響應(yīng)速度慢,功能不是很完善。優(yōu)點(diǎn):維護(hù)、升級簡單
38學(xué)號姓名性別黨員專業(yè)出生年月990001王濤男No物理82-01-21990002莊前女Yes物理82-09-21990101丁保華男No數(shù)學(xué)81-04-18990102姜沛棋女No數(shù)學(xué)81-12-02990103張智忠男No數(shù)學(xué)80-08-06990201程玲女Yes計(jì)算機(jī)82-11-14990202黎敏艷女Yes計(jì)算機(jī)83-02-21990203鄧倩梅女Yes計(jì)算機(jī)82-04-28990204楊夢逸女No計(jì)算機(jī)81-12-15學(xué)號課程成績990001大學(xué)計(jì)算機(jī)基礎(chǔ)82990001高等數(shù)學(xué)76990202計(jì)算機(jī)導(dǎo)論53990203英語71990204計(jì)算機(jī)導(dǎo)論66990204高等數(shù)學(xué)75990204英語82學(xué)生成績表學(xué)生基本情況表學(xué)號姓名課程成績990001王濤計(jì)算機(jī)文化基礎(chǔ)82990001王濤高等數(shù)學(xué)76990002莊前計(jì)算機(jī)文化基礎(chǔ)90990101丁保華高等數(shù)學(xué)77990102姜沛棋計(jì)算機(jī)文化基礎(chǔ)68990102姜沛棋C/C++程序設(shè)計(jì)85990102姜沛棋大學(xué)英語56990201程玲計(jì)算機(jī)導(dǎo)論87990201程玲高等數(shù)學(xué)67990202黎敏艷計(jì)算機(jī)導(dǎo)論53990203鄧倩梅英語71990204楊夢逸計(jì)算機(jī)導(dǎo)論66990204楊夢逸高等數(shù)學(xué)75990204楊夢逸英語8239數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)步驟一、設(shè)計(jì)原則概念單一化“一事一地”的原則避免在表之間出現(xiàn)重復(fù)字段表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系40
數(shù)據(jù)庫設(shè)計(jì)概念設(shè)計(jì)需求分析要做個(gè)什么東西信息需求處理需求安全性和完整性需求主要的完成成果是:數(shù)據(jù)流圖和數(shù)據(jù)字典(需求分析報(bào)告)物理設(shè)計(jì)邏輯設(shè)計(jì)41
數(shù)據(jù)庫設(shè)計(jì)概念設(shè)計(jì)需求分析
概念設(shè)計(jì)是由分析用戶需求到生成概念產(chǎn)品的一系列有序的、可組織的、有目標(biāo)的設(shè)計(jì)活動(dòng),它表現(xiàn)為一個(gè)由粗到精、由模糊到清晰、由具體到抽象的不斷進(jìn)化的過程。概念設(shè)計(jì)即是利用設(shè)計(jì)概念并以其為主線貫穿全部設(shè)計(jì)過程的設(shè)計(jì)方法。概念設(shè)計(jì)是完整而全面的設(shè)計(jì)過程,它通過設(shè)計(jì)概念將設(shè)計(jì)者繁復(fù)的感性和瞬間思維上升到統(tǒng)一的理性思維從而完成整個(gè)設(shè)計(jì)。主要有2中方法完成1、自頂向下法和自底向上法主要的完成成果是:E-R圖物理設(shè)計(jì)邏輯設(shè)計(jì)42
數(shù)據(jù)庫設(shè)計(jì)概念設(shè)計(jì)需求分析數(shù)據(jù)庫物理設(shè)計(jì)是后半段。將一個(gè)給定邏輯結(jié)構(gòu)實(shí)施到具體的環(huán)境中時(shí),邏輯數(shù)據(jù)模型要選取一個(gè)具體的工作環(huán)境,這個(gè)工作環(huán)境提供了數(shù)據(jù)存儲結(jié)構(gòu)與存取方法,這個(gè)過程就是數(shù)據(jù)庫的物理設(shè)計(jì)。物理結(jié)構(gòu)依賴于給定的DBMS和和硬件系統(tǒng),因此設(shè)計(jì)人員必須充分了解所用DBMS的內(nèi)部特征、存儲結(jié)構(gòu)、存取方法。數(shù)據(jù)庫的物理設(shè)計(jì)通常分為兩步,物理設(shè)計(jì)邏輯設(shè)計(jì)43
數(shù)據(jù)庫設(shè)計(jì)概念設(shè)計(jì)需求分析
確定數(shù)據(jù)庫的物理結(jié)構(gòu)包含下面四方面的內(nèi)容:1、確定數(shù)據(jù)的存儲結(jié)構(gòu)2、設(shè)計(jì)數(shù)據(jù)的存取路徑3、確定數(shù)據(jù)的存放位置4、確定系統(tǒng)配置數(shù)據(jù)庫物理設(shè)計(jì)過程中需要對時(shí)間效率、空間效率、維護(hù)代價(jià)和各種用戶要求進(jìn)行權(quán)衡,選擇一個(gè)優(yōu)化方案作為數(shù)據(jù)庫物理結(jié)構(gòu)。
物理設(shè)計(jì)邏輯設(shè)計(jì)44數(shù)據(jù)庫管理系統(tǒng)(DBMS)數(shù)據(jù)庫管理系統(tǒng)(databasemanagementsystem)是一種操縱和管理數(shù)據(jù)庫的大型軟件,是用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱dbms。它對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。用戶通過dbms訪問數(shù)據(jù)庫中的數(shù)據(jù),數(shù)據(jù)庫管理員也通過dbms進(jìn)行數(shù)據(jù)庫的維護(hù)工作。它提供多種功能,可使多個(gè)應(yīng)用程序和用戶用不同的方法在同時(shí)或不同時(shí)刻去建立,修改和詢問數(shù)據(jù)庫。它使用戶能方便地定義和操縱數(shù)據(jù),維護(hù)數(shù)據(jù)的安全性和完整性,以及進(jìn)行多用戶下的并發(fā)控制和恢復(fù)數(shù)據(jù)庫。457.2數(shù)據(jù)庫的建立和維護(hù)Access的特點(diǎn)是Office的組件之一具有對數(shù)據(jù)進(jìn)行存儲、管理、處理等常規(guī)功能直觀的可視化操作操作工具和向?qū)жS富的函數(shù)功能46實(shí)例創(chuàng)建表Students。Students的結(jié)構(gòu)字段名稱字段類型字段寬度學(xué)號Text6個(gè)字符姓名Text4個(gè)字符性別Text1個(gè)字符黨員Yes/No1個(gè)二進(jìn)制位專業(yè)Text20個(gè)字符出生年月Date/Time8字節(jié)助學(xué)金Currency8字節(jié)照片OLEObject不確定477.2.1Access數(shù)據(jù)庫的組成
表:最基本的對象,表及其表之間的關(guān)系構(gòu)成數(shù)據(jù)庫的核心查詢:從表(或查詢)中選擇一部分?jǐn)?shù)據(jù),形成一個(gè)全局性的集合窗體:用戶與數(shù)據(jù)庫交互的界面,窗體的數(shù)據(jù)源是表或查詢報(bào)表:按指定的樣式格式化的數(shù)據(jù)形式宏:若干個(gè)操作的組合模塊:用戶用VB語言編寫應(yīng)用程序Web頁:向Internet上發(fā)布數(shù)據(jù)這些不同類型的對象集合構(gòu)成了一個(gè)數(shù)據(jù)庫文件,以.mdb存儲在盤上.487.2.2Access數(shù)據(jù)庫的建立
字段數(shù)據(jù)類型有10種字段屬性大小、小數(shù)位、格式
確定表的結(jié)構(gòu)
建立一個(gè)空數(shù)據(jù)庫,輸入文件名使用設(shè)計(jì)器或向?qū)?chuàng)建表,進(jìn)入設(shè)計(jì)視圖,輸入各個(gè)字段的信息建立表的索引定義主鍵輸入表的名稱保存表主要方法:數(shù)據(jù)庫向?qū)В0澹┗蛟O(shè)計(jì)視圖,一般用后者49Access數(shù)據(jù)庫的建立
3.定義表的結(jié)構(gòu)
1.建立空數(shù)據(jù)庫2.使用設(shè)計(jì)器或向?qū)?07.2.3數(shù)據(jù)庫的管理與維護(hù)選定基本表,進(jìn)入數(shù)據(jù)表視圖,輸入編輯數(shù)據(jù)
添加新記錄1.數(shù)據(jù)輸入
51注意:打開的表或正在使用的表是不能修改的.修改字段名稱不會影響到字段中所存放的數(shù)據(jù),但是會影響到一些相關(guān)的部分。如果查詢、報(bào)表、窗體等對象使用了這個(gè)更換名稱的字段,那么在這些對象中也要作相應(yīng)的修改。關(guān)系表中互相關(guān)聯(lián)的字段是無法修改的,如果需要修改,必須先將關(guān)聯(lián)去掉選定基本表,進(jìn)入設(shè)計(jì)視圖,修改表結(jié)構(gòu)2.表結(jié)構(gòu)的修改523.數(shù)據(jù)的導(dǎo)出和導(dǎo)入導(dǎo)出操作可以將表中數(shù)據(jù)以另一種文件格式保存在磁盤上導(dǎo)入操作是導(dǎo)出操作的逆操作4.表的復(fù)制、刪除、恢復(fù)和更名類似于Windows中對文件或文件夾的操作注意在進(jìn)行這些操作之前,必須關(guān)閉有關(guān)的表操作必須在“數(shù)據(jù)庫”窗口中完成537.2.4Access表達(dá)式1.常用運(yùn)算符
類型運(yùn)算符算術(shù)運(yùn)算符+-*/^(乘方)\(整除)MOD(取余數(shù))關(guān)系運(yùn)算符<<=<>>>=BetweenLike邏輯運(yùn)算符NotAndOr字符運(yùn)算符&說明: (1)字符型數(shù)據(jù)用雙引號"或單引用'括起來。如"abcde123" 日期型數(shù)據(jù)用#括起來。例如#10/12/2000#
(2)MOD是取余數(shù)運(yùn)算符 例如,5MOD3的結(jié)果為2。
54(3)Between運(yùn)算符 格式:<表達(dá)式1>Between<表達(dá)式2>And<表達(dá)式3> 3Between1And10:True 3Between1And2:False,
(4)可使用通配符:*和? 查找姓“張”的學(xué)生:姓名Like"張*" 查找不是姓“張”的學(xué)生:姓名NotLike"張*"(5)&用于連接兩個(gè)字符串。 "ABC"&"1234"的結(jié)果是"ABC1234"552.常用內(nèi)部函數(shù)函數(shù)名說明實(shí)例結(jié)果Date()返回系統(tǒng)日期Date()#5/4/2003#Year(D)返回年份Year(#12/1/1982#)19823.表達(dá)式和表達(dá)式生成器567.2.5SQL中的數(shù)據(jù)更新命令結(jié)構(gòu)化查詢語言SQL是操作關(guān)系數(shù)據(jù)庫的工業(yè)標(biāo)準(zhǔn)語言在SQL中,常用的語句有兩類:數(shù)據(jù)查詢命令SELECT數(shù)據(jù)更新命令I(lǐng)NSERT、UPDATE、DELETEINSERT命令用于數(shù)據(jù)插入其語法格式為:
插入一條記錄
INSERTINTO
表名[(字段1,…,字段n)]VALUES(值1,…,值n)
插入查詢的結(jié)果
INSERTINTO
表名(字段1,…,字段n)VALUES
子查詢57INSERT命令實(shí)例例7.3向表Students中插入一條記錄INSERTINTOStudents(學(xué)號,姓名,性別,黨員,專業(yè),出生年月,助學(xué)金) VALUES("990301","楊國強(qiáng)","男",TRUE,"化學(xué)",#12/28/80#,220)注意:字符型常量用單引號或雙引號括起來邏輯型字段的值是True/False、Yes/No或On/Off日期的表示形式為MM/DD/YY或MM/DD/YYYY58例7.4向表Scores插入記錄(990301,大學(xué)計(jì)算機(jī)基礎(chǔ),98)
INSERTINTOScoresVALUES("990301","大學(xué)計(jì)算機(jī)基礎(chǔ)",98)直接執(zhí)行SQL語句的方法①切換到“查詢”頁。②創(chuàng)建一個(gè)空查詢。③切換到SQL視圖。④輸入SQL命令,如右圖所示。⑤執(zhí)行查詢⑥查看結(jié)果。
59DELETE語句例7.5刪除表Students中所有學(xué)號為990301的記錄DELETEFROMStudentsWHERE學(xué)號=“990301”例7.6刪除表Scores中成績低于70分的記錄DELETEFROMScoresWHERE成績<70DELETE語句用于數(shù)據(jù)刪除其語法格式為:DELETEFROM
表[WHERE條件]注意:
WHERE子句缺省,則刪除表中所有的記錄(表還在)60UPDATE語句例7.7將表Students中學(xué)生王濤的姓名改為王寶UPDATEStudentsSET姓名=“王寶”WHERE姓名="王濤"例7.8將表Students中助學(xué)金低于200的學(xué)生加30元UPDATEStudentsSET助學(xué)金=助學(xué)金+30WHERE助學(xué)金<200UPDATE語句用于數(shù)據(jù)修改其語法格式為:UPDATE
表
SET字段1=表達(dá)式1,…,字段n=表達(dá)式n[WHERE條件]
注意:
WHERE子句缺省,則修改表中所有的記錄UPDATE語句一次只能對一個(gè)表進(jìn)行修改
617.3數(shù)據(jù)庫的查詢數(shù)據(jù)查詢是數(shù)據(jù)庫的核心操作不管采用何種工具創(chuàng)建查詢,Access都會在后臺構(gòu)造等效的SELECT語句執(zhí)行查詢實(shí)質(zhì)就是運(yùn)行了相應(yīng)的SELECT語句。
SQL(StructureQueryLanguage):結(jié)構(gòu)化查詢語言分類SQL語句數(shù)據(jù)查詢SELECT數(shù)據(jù)更新語句INSERT
UPDATE
DELETE627.3.1SELECT語句
語法形式為:SELECT[ALL|DISTINCT]目標(biāo)列FROM表(或查詢)-基本部分,選擇字段
[WHERE條件表達(dá)式] -選擇滿足條件的記錄
[GROUPBY列名1HAVING過濾表達(dá)式] -分組并且過濾
[ORDERBY列名2[ASC|DESC]] -排序
不可缺少可缺省功能
根據(jù)WHERE中表達(dá)式,從指定的表(或查詢)中找出滿足條件的記錄,按目標(biāo)列顯示數(shù)據(jù)GROUPBY子句按列名1的值進(jìn)行分組,每一組產(chǎn)生一條記錄,HAVING子句對分組后的結(jié)果過濾ORDERBY子句按列名2對查詢結(jié)果的值進(jìn)行排序不能出現(xiàn)重復(fù)的記錄63合計(jì)函數(shù)
描述AVG(列名)計(jì)算某一列的平均值COUNT(*)統(tǒng)計(jì)記錄的個(gè)數(shù)COUNT(列名)統(tǒng)計(jì)某一列值的個(gè)數(shù)SUM(列名)計(jì)算某一列的總和MAX(列名)計(jì)算某一列的最大值MIN(列名)計(jì)算某一列的最小值如果沒有GROUPBY子句,合計(jì)函數(shù)對整個(gè)表進(jìn)行統(tǒng)計(jì),產(chǎn)生一條記錄,否則按分組統(tǒng)計(jì),一組產(chǎn)生一條記錄SQL合計(jì)函數(shù):641.選擇字段
例7.9查詢所有學(xué)生的學(xué)號、姓名、性別和專業(yè)
SELECT學(xué)號,姓名,性別,專業(yè)FROMStudents說明:若要查詢所有學(xué)生的基本情況(所有字段),則可以用*表示所有的字段: SELECT*FROMStudents例7.10查詢所用的專業(yè),查詢結(jié)果中不出現(xiàn)重復(fù)的記錄
SELECTDISTINCT專業(yè)FROMStudents;用DISTINCT沒有用DISTINCT65例7.11使用合計(jì)函數(shù),查詢學(xué)生人數(shù)、最低助學(xué)金、最高助學(xué)金和平均助學(xué)金SELECT Count(*)AS人數(shù), Min(助學(xué)金)AS最低助學(xué)金, Max(助學(xué)金)AS最高助學(xué)金, Avg(助學(xué)金)AS平均助學(xué)金FROMStudents可改為Count(學(xué)號)用AS子句指定別名本例產(chǎn)生一條記錄66例7.12查詢學(xué)生的人數(shù)和平均年齡SELECTCount(*)AS人數(shù), Avg(Year(Date())-Year(出生年月))AS平均年齡FROMStudents系統(tǒng)日期得到年份
672.選擇記錄例7.13顯示所有非計(jì)算機(jī)專業(yè)學(xué)生的學(xué)號、姓名和年齡
SELECT學(xué)號,姓名,Year(Date())-Year(出生年月)AS年齡FROMStudentsWHERE專業(yè)<>"計(jì)算機(jī)"查詢條件例7.14查詢1981年(包括1981年)以前出生的女生姓名和出生年月。SELECT姓名,出生年月
FROMStudentsWHERE出生年月<#1/1/1982#AND性別="女"可用#MM/DD/YYYY#的形式表示日期683.排序ORDERBY子句用于順序 ASC:表示升序 DESC:表示降序。例7.15查詢所有黨員學(xué)生的學(xué)號和姓名,并按助學(xué)金從小到大排序。SELECT學(xué)號,姓名FROMStudentsWHERE黨員=TrueORDERBY助學(xué)金可用多個(gè)關(guān)鍵字排序。例如,ORDERBY專業(yè)ASC,助學(xué)金DESC專業(yè)是第一排序關(guān)鍵字,助學(xué)金是第二排序關(guān)鍵字。694.分組查詢(1)簡單分組把在某一列上值相同的記錄分在一組,一組產(chǎn)生一條記錄。例7.16查詢每個(gè)專業(yè)學(xué)生人數(shù)。SELECT專業(yè),Count(*)AS學(xué)生人數(shù)FROMStudentsORDERBY專業(yè)將專業(yè)相同的記錄分在一組。70(2)復(fù)雜分組把在多個(gè)列上值相同的記錄分在一組,一組產(chǎn)生一條記錄。例7.17查詢各專業(yè)男女生的平均助學(xué)金SELECT專業(yè),性別,Avg(助學(xué)金)AS平均助學(xué)金FROMStudentsGROUPBY專業(yè),性別將專業(yè)和性別都相同的記錄分在一組。71(3)分組后過濾HAVING子句對分組后的結(jié)果過濾,不是對分組之前的表進(jìn)行過濾。沒有GROUPBY子句時(shí),HAVING的作用等同于WHERE子句。HAVING后的過濾條件中一般都要有合計(jì)函數(shù)。例7.18查詢有2門課程成績在75以上的學(xué)生的學(xué)號和課程數(shù)。SELECT學(xué)號,Count(*)AS課程數(shù)FROMScoresWHERE成績>=75GROUPBY學(xué)號HAVINGCount(*)>=2725.連接查詢WHERE條件,在兩表中有相同的屬性值例7.19查詢所有學(xué)生的學(xué)號、姓名、課程和成績
SELECTStudents.學(xué)號,Students.姓名,Scores.課程,Scores.成績FROMStudents,Scores
WHEREStudents.學(xué)號=Scores.學(xué)號自動(dòng)生成語句:SELECTStudents.學(xué)號,Students.姓名,Scores.課程,Scores.成績FROMStudentsINNERJOINScoresONStudents.學(xué)號=Scores.學(xué)號兩個(gè)表
連接條件
73表的連接
連接結(jié)果
74例7.20查詢選修了“高等數(shù)學(xué)”課程的學(xué)生的學(xué)號、姓名和成績。用條件“Students.學(xué)號=Scores.學(xué)號”進(jìn)行連接,然后進(jìn)行選擇,SELECTStudents.學(xué)號,Students.姓名,Scores.成績FROMStudents,ScoresWHEREStudents.學(xué)號=Scores.學(xué)號AND
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DB31/T 1028.3-2017市場監(jiān)督管理所通用管理規(guī)范第3部分:評價(jià)與改進(jìn)
- DB31/T 1019-2016兒童驗(yàn)光配鏡技術(shù)服務(wù)規(guī)范
- 2024年鋁合金精密模鍛件項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 研學(xué)設(shè)計(jì)指導(dǎo):從8個(gè)維度詳細(xì)探討研學(xué)手冊設(shè)計(jì)的要點(diǎn)與策略
- 抖音短視頻內(nèi)容創(chuàng)作者保密期限及平臺分成收益協(xié)議
- 電子政務(wù)數(shù)據(jù)保密及安全管理協(xié)議
- 2025年中國報(bào)紙期刊行業(yè)市場前景預(yù)測及投資價(jià)值評估分析報(bào)告
- 新能源汽車電機(jī)控制系統(tǒng)研發(fā)與市場推廣策劃合同
- 網(wǎng)絡(luò)輿情監(jiān)測平臺租賃與信息反饋及安全保障協(xié)議
- 影視音樂作品版權(quán)獨(dú)家運(yùn)營收益分成補(bǔ)充條款
- 2024年國家開放大學(xué)《思想道德與法治》形考大作業(yè)參考答案
- (高清版)JTG D50-2017 公路瀝青路面設(shè)計(jì)規(guī)范
- 草籽播撒勞務(wù)合同
- GB/T 43657.1-2024工業(yè)車輛能效試驗(yàn)方法第1部分:總則
- 物業(yè)秩序部工作計(jì)劃與整改措施
- 化糞池應(yīng)急預(yù)案
- 2023年-2024年職業(yè)衛(wèi)生檢測考試題庫及答案
- 2024年全國行業(yè)職業(yè)技能競賽(電力交易員)備考試題庫大全(濃縮800題)
- 急性ST段抬高型心肌梗死溶栓治療的合理用藥指南
- 《新聞學(xué)概論》試題及參考答案
- 個(gè)體診所藥房管理制度制度
評論
0/150
提交評論