第一篇:T1_Oracle數(shù)據(jù)庫(kù)基礎(chǔ)_教案范文
T1
Oracle數(shù)據(jù)庫(kù)基礎(chǔ)
【本講主要目標(biāo)】
1、Oracle數(shù)據(jù)庫(kù)概述
2、Oracle數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
? 邏輯結(jié)構(gòu)
? 物理結(jié)構(gòu)
? 系統(tǒng)結(jié)構(gòu)
? 內(nèi)存結(jié)構(gòu)(PGA 和SGA)
? 后臺(tái)進(jìn)程
? 服務(wù)器進(jìn)程
3、數(shù)據(jù)庫(kù)名、實(shí)例名、服務(wù)名簡(jiǎn)析
【本講重點(diǎn)】
1、Oracle數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
2、數(shù)據(jù)庫(kù)名、實(shí)例名、服務(wù)名概念
【本講難點(diǎn)】
Oracle數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
【上講回顧】
時(shí)間:10分鐘 無(wú)
【課程知識(shí)講解】
一、Oracle數(shù)據(jù)庫(kù)概述(時(shí)間:35分鐘)
1、數(shù)據(jù)庫(kù)基礎(chǔ)
? ? ? ? 數(shù)據(jù):指對(duì)信息的描述,或者說(shuō)描述事物的符號(hào)。
數(shù)據(jù)庫(kù):指存儲(chǔ)在計(jì)算機(jī)中,有組織的,并且可以共享的數(shù)據(jù)的集合。
數(shù)據(jù)庫(kù)管理系統(tǒng):是用來(lái)幫助人們組織、管理、分析數(shù)據(jù)庫(kù)中數(shù)據(jù)的軟件系統(tǒng),它是位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理軟件。數(shù)據(jù)管理經(jīng)歷了三個(gè)階段:
– 人工管理階段 :主要用于科學(xué)計(jì)算
– 文件系統(tǒng)階段 :實(shí)現(xiàn)文件批處理,聯(lián)機(jī)實(shí)時(shí)處理
– 數(shù)據(jù)庫(kù)系統(tǒng)階段 :實(shí)現(xiàn)多用戶、多應(yīng)用的實(shí)時(shí)處理
? ? 數(shù)據(jù)在數(shù)據(jù)庫(kù)系統(tǒng)中以數(shù)據(jù)模型的形式表現(xiàn),數(shù)據(jù)模型是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象,也是數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)學(xué)表示。
數(shù)據(jù)模型根據(jù)應(yīng)用的不同分為:
– 概念模型 :又稱信息模型,它按照用戶的觀點(diǎn) 對(duì)數(shù)據(jù)和信息進(jìn)行建模。
通常用實(shí)體--聯(lián)系(E-R)方法表示
– 結(jié)構(gòu)模型 :按照計(jì)算機(jī)系統(tǒng)的觀點(diǎn) 對(duì)數(shù)據(jù)進(jìn)行建模: ?
層次模型、網(wǎng)絡(luò)模型、關(guān)系模型以及面向?qū)ο竽P偷鹊?/p>
數(shù)據(jù)庫(kù)系統(tǒng)的組成 ? – 數(shù)據(jù)庫(kù):存儲(chǔ)數(shù)據(jù)和對(duì)數(shù)據(jù)庫(kù)的定義
– 數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS):為建立數(shù)據(jù)庫(kù)、配置和使用數(shù)據(jù)庫(kù)的軟件 – 應(yīng)用開(kāi)發(fā)工具:建立應(yīng)用程序系統(tǒng)的軟件開(kāi)發(fā)工具
– 應(yīng)用程序:建立在DBMS上,適應(yīng)不同應(yīng)用環(huán)境的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)
– 數(shù)據(jù)庫(kù)管理員:負(fù)責(zé)管理企業(yè)的數(shù)據(jù)資源,收集和確定有關(guān)用戶的需求,設(shè)計(jì)和實(shí)現(xiàn)數(shù)據(jù)庫(kù)并按照需求修改和轉(zhuǎn)換數(shù)據(jù),以及為用戶提供幫助和培訓(xùn)。– 用戶:最終用戶
– 系統(tǒng)分析員、數(shù)據(jù)庫(kù)設(shè)計(jì)人員、程序員等等
2、Oracle發(fā)展情況
? Oracle中文譯為甲骨文,是全球第二大獨(dú)立軟件公司,專業(yè)生產(chǎn)數(shù)據(jù)庫(kù)管理軟件及其相關(guān)產(chǎn)品,也是第一個(gè)推出關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)的工具的。
? 1977年Larry Ellison,Bob Miner 和Ed Oates共同創(chuàng)建的一家軟件開(kāi)發(fā)實(shí)驗(yàn)室,主要開(kāi)發(fā)當(dāng)時(shí)新型的關(guān)系型數(shù)據(jù)庫(kù),這是Oracle公司的前身; ? 1978年更名為關(guān)系型軟件公司(RSI)
? 1979年開(kāi)發(fā)出第一款商業(yè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)Oracle;? 1984年將關(guān)系型數(shù)據(jù)庫(kù)推廣到個(gè)人計(jì)算機(jī)上,在隨后推出Oracle5中率先推出了分布式數(shù)據(jù)庫(kù)概念
? 1988年推出oracle6,增加行鎖定模式及對(duì)稱多處理器系統(tǒng)的支持 ? 1992年推出Oracle7 ? 1999年推出Oracle8i為核心的全球第一個(gè)支持Internet的一整套解決方案,并增加了對(duì)象的技術(shù),成為第一個(gè)關(guān)系對(duì)象數(shù)據(jù)庫(kù)系統(tǒng)
? 2000年推出Oracle9i,在群集技術(shù)、高可用性、商業(yè)智能、安全性、系統(tǒng)管理方面都有了新的突破,成為業(yè)界第一個(gè)完整的、簡(jiǎn)單的、新一代智能化的、協(xié)作各種應(yīng)用的軟件基礎(chǔ)平臺(tái)。
3、Oracle9i的產(chǎn)品構(gòu)成
? Oracle9i是一整套網(wǎng)絡(luò)數(shù)據(jù)庫(kù)應(yīng)用解決方案,包含Oracle9i Database, Oracle9i Application Server, Oracle9i Developer Suite的完整集成。
? ? ? Oracle9i數(shù)據(jù)庫(kù):提供聯(lián)機(jī)分析處理及其數(shù)據(jù)挖掘和分析、硬件集群、智能的自我調(diào)整、糾正和管理功能,并提供了三種不同的版本
Oracle9i應(yīng)用服務(wù)器:提供全面的應(yīng)用服務(wù)器基礎(chǔ)構(gòu)架,用于開(kāi)發(fā)、部署和管理互聯(lián)網(wǎng)應(yīng)用程序
Oracle9i開(kāi)發(fā)套件:完整、集成的開(kāi)發(fā)工具套件,使用J2EE和XML來(lái)快速開(kāi)發(fā)事務(wù)處理型web應(yīng)用和服務(wù):JDeveloper,Designer等
4、Oracle數(shù)據(jù)庫(kù)的主要特點(diǎn)
5、Oracle9i的工作模式
? ? C-S模式 B-S模式
二、Oracle系統(tǒng)的結(jié)構(gòu)(時(shí)間:50分鐘)
1、概述
? 應(yīng)用系統(tǒng)的核心任務(wù)是提供對(duì)用戶數(shù)據(jù)的管理,所以系統(tǒng)應(yīng)以數(shù)據(jù)為中心。
? 數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)是從某一個(gè)角度來(lái)分析與考察數(shù)據(jù)庫(kù)的組成、工作過(guò)程與原理,以及數(shù)據(jù)在數(shù)據(jù)庫(kù)中的組織與管理機(jī)制。
? Oracle9i數(shù)據(jù)庫(kù)體系總共可以分為以下幾個(gè)組成部分: –
邏輯結(jié)構(gòu)
–
物理結(jié)構(gòu)
–
系統(tǒng)總體結(jié)構(gòu)
2、Oracle9i的邏輯結(jié)構(gòu)
? ? Oracle9i的邏輯結(jié)構(gòu)由6層組成
–
一個(gè)Oracle9i 數(shù)據(jù)庫(kù)可以有多個(gè)數(shù)據(jù)庫(kù),–
每個(gè)數(shù)據(jù)庫(kù)可以有多個(gè)表空間,–
每個(gè)表空間可以有多個(gè)表,–
每個(gè)表可以有多個(gè)段,–
每個(gè)段可有多個(gè)區(qū)間,–
每個(gè)區(qū)間可以有多個(gè)數(shù)據(jù)塊。
表空間:是Oracle數(shù)據(jù)庫(kù)數(shù)據(jù)的邏輯組織單位 – 物理上是由一個(gè)或多個(gè)數(shù)據(jù)文件組成
– 數(shù)據(jù)庫(kù)要先建立表空間才能將數(shù)據(jù)插入到表空間中的一個(gè)對(duì)象中 – 可以通過(guò)添加數(shù)據(jù)文件來(lái)增加某個(gè)用戶的空間配額
– 默認(rèn)表空間:INDEX,SYSTEM,TEMP,TOOLS,USERS等 段:用于存放數(shù)據(jù)庫(kù)中特定邏輯結(jié)構(gòu)的所有數(shù)據(jù) – 數(shù)據(jù)段:用于存放表中的數(shù)據(jù) – 索引段:用于存放索引數(shù)據(jù)
– 臨時(shí)段:臨時(shí)數(shù)據(jù),若排序產(chǎn)生的臨時(shí)數(shù)據(jù),用完就釋放空間 – 回滾段:用于存儲(chǔ)事務(wù)的回滾信息 區(qū)間:由連續(xù)分配的相臨數(shù)據(jù)塊組成
– SQL>SELECT * FROM DBA_EXTENTS;數(shù)據(jù)塊: 是數(shù)據(jù)庫(kù)中最小、最基本的存儲(chǔ)單位。
– Oracle數(shù)據(jù)塊大小通過(guò)設(shè)置為操作系統(tǒng)塊大小的整數(shù)倍
3、Oracle9i的物理結(jié)構(gòu)
? ? ? ? ? ? 數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)是指從物理的角度分析數(shù)據(jù)庫(kù)的構(gòu)成,也就是說(shuō),Oracle數(shù)據(jù)庫(kù)創(chuàng)建后使用的操作系統(tǒng)物理文件
從數(shù)據(jù)庫(kù)物理結(jié)構(gòu)上分析,數(shù)據(jù)庫(kù)實(shí)際上是由構(gòu)成數(shù)據(jù)庫(kù)的操作系統(tǒng)文件所構(gòu)成的。這里所說(shuō)的“操作系統(tǒng)文件”是指“數(shù)據(jù)庫(kù)文件”,而不是Oracle的“系統(tǒng)文件”。
只有數(shù)據(jù)庫(kù)文件才是數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),而系統(tǒng)文件不屬于數(shù)據(jù)庫(kù)物理結(jié)構(gòu)的范圍。數(shù)據(jù)庫(kù)文件的損壞,可以引起用戶數(shù)據(jù)的丟失;而系統(tǒng)文件損壞,可以使用介質(zhì)重新安裝,或進(jìn)行有效的復(fù)制。
Oracle9i數(shù)據(jù)庫(kù)的物理文件主要有以下幾種-1: – 數(shù)據(jù)文件(data file)? 存放數(shù)據(jù)庫(kù)數(shù)據(jù)的物理文件,以.DBF為后綴 ? 數(shù)據(jù)庫(kù)至少包含一個(gè)數(shù)據(jù)文件
? 表空間的物理組成單元是數(shù)據(jù)文件,一個(gè)表空間可以包含多個(gè)數(shù)據(jù)文件,每個(gè)數(shù)據(jù)文件只能屬于一個(gè)表空間。
? 數(shù)據(jù)庫(kù)安裝完成后,系統(tǒng)會(huì)自動(dòng)創(chuàng)建默認(rèn)的表空間,放在$oracle_homeoradata目錄下
– 控制文件(control file)? 用于記錄和維護(hù)整個(gè)數(shù)據(jù)庫(kù)的全局物理結(jié)構(gòu),是二進(jìn)制文件,以.CTL為后綴 ? 存放有關(guān)的關(guān)鍵控制信息,如數(shù)據(jù)庫(kù)名和創(chuàng)建時(shí)間,大小及其位置等 ? 在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)生成,以后當(dāng)數(shù)據(jù)庫(kù)發(fā)生任何物理變化時(shí)被自動(dòng)更改
? 每個(gè)數(shù)據(jù)庫(kù)至少包含一個(gè)控制文件,當(dāng)數(shù)據(jù)庫(kù)啟動(dòng)時(shí),首先要按照控制文件設(shè)定的數(shù)據(jù)文件、日志文件等信息來(lái)檢查數(shù)據(jù)庫(kù)的狀態(tài)是否正常,最后才完成數(shù)據(jù)庫(kù)的啟動(dòng)
? Oracle9i數(shù)據(jù)庫(kù)的物理文件主要有以下幾種-2: –
日志文件(redo file)? 用于記錄對(duì)數(shù)據(jù)庫(kù)進(jìn)行的修改操作和事務(wù)操作,以.LOG為后綴 ? 每個(gè)數(shù)據(jù)庫(kù)至少包含兩個(gè)重做日志文件,循環(huán)使用
–
初始化參數(shù)文件(parameter file)? Init.ora是一個(gè)文本文件,定義了要啟動(dòng)的數(shù)據(jù)庫(kù)及內(nèi)存結(jié)構(gòu)的大約200多項(xiàng)參數(shù)信息 ? 啟動(dòng)任何例程前,系統(tǒng)都要先讀取該文件的各項(xiàng)信息
–
其他oracle 物理文件
? 跟蹤文件:*.trc ? 警告文件:*.log ? 備份文件 ? 口令文件 Oracle例程啟動(dòng)時(shí),Oracle從參數(shù)文件中讀取控制文件的名字和位置
登陸數(shù)據(jù)庫(kù)時(shí),打開(kāi)控制文件,Oracle從控制文件中讀取數(shù)據(jù)文件和日志文件列表并打開(kāi)其中的每一個(gè)文件
? ?
4、Oracle總體結(jié)構(gòu)
? ? ? ? Oracle數(shù)據(jù)庫(kù)服務(wù)器由數(shù)據(jù)庫(kù)管理系統(tǒng)和數(shù)據(jù)庫(kù)組成。
數(shù)據(jù)庫(kù)管理系統(tǒng)由內(nèi)存結(jié)構(gòu)(PGA和SGA)、后臺(tái)進(jìn)程和服務(wù)器進(jìn)程組成。
客戶機(jī)上的用戶進(jìn)程通過(guò)SGA向數(shù)據(jù)庫(kù)管理系統(tǒng)提交請(qǐng)求,后臺(tái)進(jìn)程將這些請(qǐng)求轉(zhuǎn)換為對(duì)數(shù)據(jù)庫(kù)的相應(yīng)操作。
內(nèi)存結(jié)構(gòu):是oracle使用計(jì)算機(jī)上的內(nèi)存存放常用信息和所有運(yùn)行在該機(jī)器上的Oracle程序。–
系統(tǒng)全局區(qū)(SGA):
? 是運(yùn)行在客戶機(jī)上的用戶進(jìn)程和運(yùn)行在服務(wù)器上的服務(wù)器進(jìn)程所使用的內(nèi)存區(qū)域。? 該區(qū)域的數(shù)據(jù)是共享的
? 數(shù)據(jù)緩沖區(qū)、字典緩沖區(qū)、日志緩沖區(qū)、SQL共享區(qū) ? 創(chuàng)建例程時(shí)分配該區(qū)域,例程關(guān)閉時(shí)釋放。– 程序全局區(qū)(PGA):
? 單個(gè)用戶進(jìn)程所使用的內(nèi)存區(qū)域
? 每個(gè)進(jìn)程都有自己的私有區(qū)域,存放單獨(dú)的數(shù)據(jù)和控制信息 ? 不共享 后臺(tái)進(jìn)程:幫助用戶進(jìn)程和服務(wù)器進(jìn)程進(jìn)行通信,不論是否有用戶連接他們都在運(yùn)行,負(fù)責(zé)數(shù)據(jù)庫(kù)的后臺(tái)管理工作。–
系統(tǒng)監(jiān)視進(jìn)程(SMON)–
進(jìn)程監(jiān)視進(jìn)程(PMON)–
數(shù)據(jù)庫(kù)寫(xiě)入進(jìn)程(DBWR)? – – – –
日志寫(xiě)入進(jìn)程(LGWR)歸檔進(jìn)程(ARCH)恢復(fù)進(jìn)程(RECO)等等
? ? ?
Oracle例程是具有自己的SGA和與其相關(guān)的數(shù)據(jù)庫(kù)文件的后臺(tái)進(jìn)程集。通常Oracle例程可以理解為相對(duì)獨(dú)立的邏輯上的數(shù)據(jù)庫(kù)服務(wù)器 – 數(shù)據(jù)庫(kù)指存儲(chǔ)和管理數(shù)據(jù)文件的集合
– Oracle例程由SGA和后臺(tái)進(jìn)程集組成,后臺(tái)進(jìn)程共同訪問(wèn)SGA中的內(nèi)存區(qū)域 在并行服務(wù)器中,一個(gè)Oracle數(shù)據(jù)庫(kù)可以被多個(gè)Oracle例程訪問(wèn)
Oracle數(shù)據(jù)庫(kù)的實(shí)例進(jìn)程有兩種類型 –
單進(jìn)程數(shù)據(jù)庫(kù)實(shí)例
一個(gè)進(jìn)程執(zhí)行全部Oracle 代碼,一般用于單任務(wù)操作系統(tǒng)
服務(wù)器進(jìn)程與用戶進(jìn)程、服務(wù)器軟件與應(yīng)用軟件合二為一,在一臺(tái)機(jī)器上運(yùn)行。這種配置方式不支持網(wǎng)絡(luò)連接,不可以進(jìn)行數(shù)據(jù)復(fù)制。
–
多進(jìn)程數(shù)據(jù)庫(kù)實(shí)例
由多個(gè)進(jìn)程執(zhí)行Oracle 代碼的不同部分,一般用于多任務(wù)操作系統(tǒng)。
多進(jìn)程實(shí)例支持網(wǎng)絡(luò)連接,可以進(jìn)行數(shù)據(jù)的遠(yuǎn)程復(fù)制,?
在多進(jìn)程O(píng)racle 中,系統(tǒng)的進(jìn)程被分為用戶進(jìn)程、服務(wù)器進(jìn)程與后臺(tái)進(jìn)程。
三、數(shù)據(jù)庫(kù)名、實(shí)例名、服務(wù)名簡(jiǎn)析(時(shí)間:5分鐘)
? 數(shù)據(jù)庫(kù)名:用于區(qū)分一個(gè)數(shù)據(jù)的內(nèi)部標(biāo)識(shí),以二進(jìn)制方式存儲(chǔ)于數(shù)據(jù)庫(kù)控制文件中的參數(shù),用DB_NAME表示,數(shù)據(jù)庫(kù)安裝完成后,寫(xiě)入數(shù)據(jù)庫(kù)參數(shù)文件pfile,不能進(jìn)行修改。? 數(shù)據(jù)庫(kù)實(shí)例名:用于對(duì)外相連時(shí)使用。INSTANCE_NAME表示,可以進(jìn)行修改。? 數(shù)據(jù)庫(kù)名與實(shí)例名是一一對(duì)應(yīng)關(guān)系。
? 服務(wù)名:如果數(shù)據(jù)庫(kù)有域名,服務(wù)名就是全局?jǐn)?shù)據(jù)庫(kù)名;如果數(shù)據(jù)庫(kù)沒(méi)有域名,服務(wù)名就是數(shù)據(jù)名。
【本講總結(jié)】
(時(shí)間:10分鐘)
1、Oracle數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
? 邏輯結(jié)構(gòu)
? 物理結(jié)構(gòu)
? 系統(tǒng)結(jié)構(gòu)
? 內(nèi)存結(jié)構(gòu)(PGA 和SGA)
? 后臺(tái)進(jìn)程
? 服務(wù)器進(jìn)程
2、數(shù)據(jù)庫(kù)名、實(shí)例名、服務(wù)名簡(jiǎn)析
【考核點(diǎn)】
1、Oracle數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
? 邏輯結(jié)構(gòu)
? 物理結(jié)構(gòu)
? 系統(tǒng)結(jié)構(gòu)
? 內(nèi)存結(jié)構(gòu)(PGA 和SGA)? 后臺(tái)進(jìn)程
? 服務(wù)器進(jìn)程
2、數(shù)據(jù)庫(kù)名、實(shí)例名、服務(wù)名簡(jiǎn)析
【測(cè)試題】
無(wú)
【擴(kuò)展部分】
無(wú)
【學(xué)生問(wèn)題匯總】
無(wú)
【作業(yè)】
參見(jiàn)對(duì)應(yīng)的理論作業(yè).txt文件。
第二篇:《數(shù)據(jù)庫(kù)基礎(chǔ)教案》-access
《數(shù)據(jù)庫(kù)基礎(chǔ)》教案
(56學(xué)時(shí))
主講: 專業(yè): 班級(jí):
第1章 數(shù)據(jù)庫(kù)系統(tǒng)概述(4學(xué)時(shí))
教學(xué)目標(biāo):了解數(shù)據(jù)庫(kù)技術(shù)的發(fā)展史,了解每個(gè)階段具有代表性的數(shù)據(jù)庫(kù)管理系統(tǒng)的特點(diǎn)和劃分依據(jù),了解關(guān)系運(yùn)算和關(guān)系規(guī)范化。
教學(xué)重點(diǎn):
? 掌握關(guān)系數(shù)據(jù)庫(kù)的基本概念和發(fā)展歷史; ? 掌握數(shù)據(jù)模型的組成及組成要素;
? 掌握概念模型的表示方法及轉(zhuǎn)化為數(shù)據(jù)庫(kù)模式的方法 ? 掌握關(guān)系運(yùn)算的方法,了解各種關(guān)系運(yùn)算的作用; ? 掌握函數(shù)依賴及關(guān)系規(guī)范化; 教學(xué)難點(diǎn):
? 數(shù)據(jù)模型的含義 ? 關(guān)系運(yùn)算的運(yùn)算規(guī)則 ? E-R圖及轉(zhuǎn)化規(guī)則
? 函數(shù)依賴及關(guān)系規(guī)范化 教學(xué)建議:
查看一些有關(guān)計(jì)算機(jī)科普方面的書(shū)籍或刊物或網(wǎng)站,多了解一些計(jì)算機(jī)的科普知識(shí)。知道一些計(jì)算機(jī)領(lǐng)域中的科學(xué)家的故事,對(duì)掌握本節(jié)內(nèi)容有很多好處。本講內(nèi)容概述:主要介紹了數(shù)據(jù)庫(kù)技術(shù)的發(fā)展所經(jīng)歷的三個(gè)階段,并簡(jiǎn)單介紹了分布數(shù)據(jù)庫(kù)、并行數(shù)據(jù)庫(kù)、多媒體數(shù)據(jù)庫(kù)的基本特點(diǎn)。詳細(xì)介紹了關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)模型、關(guān)系運(yùn)算,闡述了關(guān)系數(shù)據(jù)庫(kù)的概念和函數(shù)依賴及關(guān)系規(guī)范化。
涉及章節(jié)及安排:
1.1數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)系統(tǒng)(1學(xué)時(shí))1.2數(shù)據(jù)模型(1學(xué)時(shí))
1.3 關(guān)系運(yùn)算及關(guān)系完整性(1學(xué)時(shí))1.3 函數(shù)依賴及關(guān)系規(guī)范化(1學(xué)時(shí))思考與訓(xùn)練:
(1)進(jìn)行表的關(guān)系運(yùn)算的作用是什么?
(2)如果要顯示所有數(shù)據(jù)庫(kù)課程的成績(jī),需要進(jìn)行什么運(yùn)算?
(3)如果要顯示所有學(xué)生的姓名、課程名稱和成績(jī),需要進(jìn)行什么運(yùn)算?
課后練習(xí):第1章習(xí)題 第二章 關(guān)系數(shù)據(jù)庫(kù)(6學(xué)時(shí))
教學(xué)目標(biāo):了解Access2003的新特點(diǎn)及開(kāi)發(fā)環(huán)境,掌握Access2003數(shù)據(jù)庫(kù)的設(shè)計(jì)方法及步驟,結(jié)合圖書(shū)借閱管理系統(tǒng)了解數(shù)據(jù)設(shè)計(jì)的步驟及安全管理。
教學(xué)重點(diǎn):
? Access的工作環(huán)境 ? Access的數(shù)據(jù)庫(kù)對(duì)象 ? Access數(shù)據(jù)庫(kù)設(shè)計(jì)步驟
? Access數(shù)據(jù)庫(kù)的管理與安全 教學(xué)難點(diǎn):
? Access2003數(shù)據(jù)庫(kù)的設(shè)計(jì)步驟 ? Access2003數(shù)據(jù)庫(kù)的管理和安全 教學(xué)建議:
結(jié)合圖書(shū)借閱管理系統(tǒng)的實(shí)例,課下設(shè)計(jì)學(xué)生成績(jī)管理系統(tǒng)的設(shè)計(jì),并實(shí)施數(shù)據(jù)庫(kù)的管理與安全。
本講內(nèi)容概述:主要介紹了數(shù)Access2003的特點(diǎn)及開(kāi)發(fā)環(huán)境,闡述了數(shù)據(jù)設(shè)計(jì)的步驟及方法,演示并練習(xí)數(shù)據(jù)庫(kù)的管理與安全。涉及章節(jié)及安排:
2.1Access2003基礎(chǔ)(1學(xué)時(shí))
2.2 Access2003開(kāi)發(fā)環(huán)境(1學(xué)時(shí))2.3 Access2003數(shù)據(jù)庫(kù)設(shè)計(jì)(2學(xué)時(shí))2.3 數(shù)據(jù)庫(kù)的管理與安全(2學(xué)時(shí))思考與訓(xùn)練:
(1)學(xué)生成績(jī)管理系統(tǒng)數(shù)據(jù)庫(kù)的設(shè)計(jì);(2)圖書(shū)借閱管理系統(tǒng)的管理與安全練習(xí); 課后練習(xí):第2章習(xí)題
第三章 數(shù)據(jù)庫(kù)和表(10學(xué)時(shí))教學(xué)目標(biāo):
1)學(xué)習(xí)并掌握數(shù)據(jù)庫(kù)的創(chuàng)建方法;掌握打開(kāi)數(shù)據(jù)庫(kù)的常用方法;理解并掌握數(shù)據(jù)庫(kù)對(duì)象的刪除、復(fù)制重命名、保存,并會(huì)用組來(lái)組織數(shù)據(jù)庫(kù)對(duì)象; 2)學(xué)習(xí)并掌握使用向?qū)?chuàng)建表、使用輸入數(shù)據(jù)創(chuàng)建表以及自定義表的方法,要求掌握字段名稱定義、設(shè)置字段類型以及設(shè)置字段大小、格式字段屬性的方法;
3)學(xué)習(xí)并掌握在設(shè)計(jì)視圖中進(jìn)行小數(shù)位數(shù)、輸入掩碼、標(biāo)題、默認(rèn)值、有效性規(guī)則等字段屬性設(shè)置的方法,掌握查閱列表和主鍵的創(chuàng)建方法,學(xué)會(huì)使用Access 2002的導(dǎo)入表、鏈接表和導(dǎo)出表功能。
4)理解主鍵和外鍵的概念,了解表的關(guān)聯(lián)類型,掌握定義表之間關(guān)聯(lián)關(guān)系的方法。理解和掌握參照完整性的概念和設(shè)置方法。
5)熟練掌握直接向表添加記錄、用自動(dòng)窗體錄入數(shù)據(jù)的方法,學(xué)會(huì)使用查找和替換功能提高數(shù)據(jù)修改的效率,理解排序和篩選的概念和實(shí)現(xiàn)它們的方法,能夠根據(jù)實(shí)際需要設(shè)置表的外觀 教學(xué)重點(diǎn):
? 掌握使用向?qū)?chuàng)建數(shù)據(jù)庫(kù)的方法; ? 了解并掌握常見(jiàn)的數(shù)據(jù)庫(kù)打開(kāi)方法;
? 了解數(shù)據(jù)庫(kù)對(duì)象管理的意義和作用,掌握復(fù)制、刪除、重命名、保存等基本操作;
? 理解數(shù)據(jù)庫(kù)對(duì)象管理中“組”的含義,掌握用“組”組織數(shù)據(jù)庫(kù)對(duì)象的方法。
? 使用向?qū)?chuàng)建表的方法; ? 使用輸入數(shù)據(jù)創(chuàng)建表;
? 使用設(shè)計(jì)器創(chuàng)建表的方法; ? 設(shè)置字段類型的方法;
? 設(shè)置字段大小、格式的方法。? 主鍵和外鍵; ? 表的關(guān)聯(lián)類型; ? 定義表之間的關(guān)系; ? 參照完整性。? 在表中錄入數(shù)據(jù);
? 使用自動(dòng)窗體錄入數(shù)據(jù); ? 修改數(shù)據(jù); ? 查找和替換; ? 排序與篩選; ? 表的行列操作。教學(xué)難點(diǎn):
? 數(shù)據(jù)庫(kù)對(duì)象管理中“組”的感念及使用方法 ? 使用設(shè)計(jì)器創(chuàng)建表; ? 設(shè)置字段格式。
? 輸入掩碼、有效性規(guī)則和有效性文本字段屬性的設(shè)置; ? 創(chuàng)建查閱列表; ? 導(dǎo)入表和鏈接表。? 表的關(guān)聯(lián)類型;
? 定義和修改表間關(guān)系;
? 參照完整性的含義和設(shè)置方法。? 排序與篩選。本講內(nèi)容概述: 1)介紹在Access 2003中創(chuàng)建數(shù)據(jù)庫(kù)的方法、打開(kāi)數(shù)據(jù)庫(kù)的方法及數(shù)據(jù)庫(kù)對(duì)象的復(fù)制、刪除、重命名和保存等操作方法 2)在Access 2003中使用向?qū)?chuàng)建表、使用輸入數(shù)據(jù)創(chuàng)建表和使用設(shè)計(jì)器自定義表的方法,要求掌握對(duì)表字段大小和字段格式這兩種字段屬性進(jìn)行設(shè)置和修改的方法以,熟練掌握對(duì)表中字段的各種操作。
3)介紹小數(shù)位數(shù)、輸入眼碼、標(biāo)題、默認(rèn)值、有效性規(guī)則、有效文本以及索引等字段屬性的設(shè)置方法。介紹了查閱列表、主鍵的創(chuàng)建方法,此外還要了解使用Access 2003的導(dǎo)入功能利用外部數(shù)據(jù)創(chuàng)建表的方法和過(guò)程,介紹了鏈接表的概念和使用方法,并對(duì)Access 2003的導(dǎo)出功能作了介紹。
4)介紹了主鍵和外鍵的概念、創(chuàng)建索引的方法和過(guò)程,講解數(shù)據(jù)表之間關(guān)聯(lián)關(guān)系的建立和修改的方法,并講述了參照完整性的概念。5)介紹在數(shù)據(jù)表視圖下對(duì)表中數(shù)據(jù)進(jìn)行各種編輯的方法,此外還介紹了查找和替換數(shù)據(jù)的方法,講解了排序和篩選的作用和用法,最后介紹了表的外觀設(shè)置方法。
涉及章節(jié)及安排:
3.1創(chuàng)建數(shù)據(jù)庫(kù)(2學(xué)時(shí))3.2建立表(2學(xué)時(shí))3.3維護(hù)表(2學(xué)時(shí))3.4操作表(2學(xué)時(shí))3.5數(shù)據(jù)表的關(guān)聯(lián)(2學(xué)時(shí))思考與訓(xùn)練:
(1)使用向?qū)?chuàng)建的數(shù)據(jù)庫(kù)有什么優(yōu)、缺點(diǎn)?
(2)使用向?qū)?chuàng)建表與使用設(shè)計(jì)器創(chuàng)建表有什么不同?使用設(shè)計(jì)器創(chuàng)建表有什么優(yōu)勢(shì)?
(3)設(shè)置字段格式的重要性是什么?(4)先輸入數(shù)據(jù)還是先建立關(guān)系?
(5)參照完整性和級(jí)聯(lián)更新的關(guān)系是什么?(6)修改表中數(shù)據(jù)的字體樣式有哪些方法?(7)凍結(jié)列和隱藏列有什么作用? 課后練習(xí):第3章后習(xí)題 第四章 數(shù)據(jù)查詢和第五章SQL語(yǔ)言(10學(xué)時(shí))教學(xué)目標(biāo):
1)理解查詢的概念及其意義,了解選擇查詢、參數(shù)查詢、交叉表查詢和操作查詢的基本概念。熟練掌握使用向?qū)Ш褪褂迷O(shè)計(jì)器創(chuàng)建選擇查詢的方法。2)理解參數(shù)查詢的含義,掌握參數(shù)查詢的操作過(guò)程,明確參數(shù)查詢?cè)诓樵儨?zhǔn)則確定方面的不同之處。理解交叉表查詢的概念和創(chuàng)建方法,并會(huì)使用交叉表查詢實(shí)現(xiàn)字段數(shù)據(jù)的匯總。
3)介紹查詢表達(dá)式中的運(yùn)算及查詢表達(dá)式的構(gòu)建方法,介紹表達(dá)式的常見(jiàn)應(yīng)用;詳細(xì)介紹計(jì)算字段的含義及創(chuàng)建、使用方法。
4)理解并掌握四種操作查詢的創(chuàng)建方法,了解使用SQL可以實(shí)現(xiàn)所有查詢這一事實(shí);理解各種操作查詢的使用場(chǎng)合和功能;掌握使用SQL創(chuàng)建聯(lián)合查詢、傳遞查詢、數(shù)據(jù)定義查詢、子查詢等特定查詢的方法和相應(yīng)的SQL語(yǔ)句格式。
教學(xué)重點(diǎn):
? 查詢的定義和作用; ? 查詢的種類;
? 使用向?qū)?chuàng)建選擇查詢; ? 使用設(shè)計(jì)器創(chuàng)建選擇查詢。? 創(chuàng)建參數(shù)查詢;
? 使用向?qū)?chuàng)建交叉表查詢; ? 使用設(shè)計(jì)器創(chuàng)建交叉表查詢。
? 表達(dá)式中的算術(shù)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符和連接運(yùn)算符; ? 表達(dá)式在查詢中的應(yīng)用;
? 用設(shè)計(jì)視圖在查詢中創(chuàng)建計(jì)算字段。? 創(chuàng)建生成表查詢; ? 創(chuàng)建更新查詢; ? 創(chuàng)建追加查詢; ? 創(chuàng)建刪除查詢; ? SQL語(yǔ)句介紹; ? 創(chuàng)建SQL查詢。教學(xué)難點(diǎn):
? 在設(shè)計(jì)視圖中創(chuàng)建和修改查詢的方法; ? 創(chuàng)建單表和多表查詢的方法; ? 查詢準(zhǔn)則的確定方法。? 創(chuàng)建參數(shù)查詢;
? 使用設(shè)計(jì)器創(chuàng)建交叉表查詢。? 查詢表達(dá)式; ? 計(jì)算字段的創(chuàng)建。? SQL語(yǔ)句格式; ? 創(chuàng)建SQL查詢。本講內(nèi)容概述:
1)主要介紹查詢的定義和作用,介紹常見(jiàn)查詢種類。重點(diǎn)講述選擇查詢的創(chuàng)建方法,創(chuàng)建方法主要有兩種:使用向?qū)?chuàng)建和使用設(shè)計(jì)器創(chuàng)建選擇查詢。2)介紹主要介紹選擇查詢之參數(shù)查詢的實(shí)現(xiàn)方法,并詳細(xì)介紹交叉查詢的含義和創(chuàng)建方法。
3)介紹查詢表達(dá)式中的運(yùn)算及查詢表達(dá)式的構(gòu)建方法,介紹表達(dá)式的常見(jiàn)應(yīng)用;詳細(xì)介紹計(jì)算字段的含義及創(chuàng)建、使用方法。
4)介紹生成表查詢、更新查詢、追加查詢、刪除查詢這四種操作查詢的含義和創(chuàng)建方法,并介紹了SQL結(jié)構(gòu)化查詢的主要語(yǔ)句,詳細(xì)說(shuō)明使用SQL實(shí)現(xiàn)聯(lián)合查詢、傳遞查詢等特定查詢的方法。涉及章節(jié)及安排:
4.1 查詢的概念和目的(1學(xué)時(shí))4.2 建立查詢的方式(1學(xué)時(shí))4.3 查詢?cè)O(shè)計(jì)器的使用(2 學(xué)時(shí))4.4設(shè)計(jì)各種查詢(2學(xué)時(shí))4.5 查詢的保存與運(yùn)行(2學(xué)時(shí))4.6創(chuàng)建SQL查詢(2 學(xué)時(shí))4.7創(chuàng)建操作查詢(2學(xué)時(shí))思考與訓(xùn)練:
1)在查詢向?qū)е?,明?xì)與匯總的含義和區(qū)別是什么? 2)怎樣在未建立關(guān)系的表間建立臨時(shí)關(guān)系?
3)參數(shù)查詢?cè)诓樵儨?zhǔn)則的確定上有什么特點(diǎn)和好處?
4)交叉表查詢中,對(duì)于交叉表中主題“值”部分的對(duì)應(yīng)“總計(jì)”單元格能否設(shè)置為“Group By”?
5)計(jì)算字段的本質(zhì)是什么?
6)操作查詢與其它查詢有什么不同?起什么作用? 7)使用SQL語(yǔ)句可以實(shí)現(xiàn)所有查詢嗎? 課后練習(xí):第4、5章習(xí)題
第六章 窗體(6學(xué)時(shí))教學(xué)目標(biāo): 1)了解窗體的作用和分類,熟悉各種窗體的用途。掌握創(chuàng)建窗體的兩種方法:使用向?qū)?chuàng)建窗體和使用設(shè)計(jì)器創(chuàng)建窗體。
2)了解常用控件的種類和用途,掌握常用控件的使用方法及屬性設(shè)置方法,學(xué)會(huì)使用控件實(shí)現(xiàn)常見(jiàn)功能。了解窗體上控件布局調(diào)整的方法。3)了解子窗體的概念,掌握嵌入式子窗體和彈出式子窗體的概念和使用方法;掌握使用窗體添加、刪除和編輯數(shù)據(jù)的方法;掌握在窗體中實(shí)現(xiàn)對(duì)記錄的查找、篩選和排序的方法。教學(xué)重點(diǎn):
? 窗體的定義和作用; ? 窗體的分類;
? 使用向?qū)?chuàng)建窗體; ? 使用設(shè)計(jì)器創(chuàng)建窗體。? 常用控件的種類和用途;
? 常用控件的功能和屬性設(shè)置; ? 窗體控件布局調(diào)整方法。
? 子窗體的種類、用途和創(chuàng)建方法;
? 使用窗體向數(shù)據(jù)庫(kù)中添加、刪除和編輯記錄; ? 在窗體中實(shí)現(xiàn)查找、篩選和排序。教學(xué)難點(diǎn):
? 使用向?qū)?chuàng)建窗體; ? 使用設(shè)計(jì)器創(chuàng)建窗體。
? 常用控件的使用方法和用途;
? 嵌入式子窗體、彈出式子窗體的使用; ? 在窗體中實(shí)現(xiàn)篩選和排序。本講內(nèi)容概述:
1)主要介紹了縱欄式窗體、表格式窗體、數(shù)據(jù)表窗體、子窗體、彈出式窗體、數(shù)據(jù)透視表窗體、數(shù)據(jù)透視圖窗體七種類型的窗體。并介紹了兩種創(chuàng)建窗體的方法:使用向?qū)?chuàng)建窗體和使用設(shè)計(jì)器創(chuàng)建窗體。
2)主要介紹了常用控件的種類和用途,并詳細(xì)介紹了常用控件的使用方法,說(shuō)明了窗體上調(diào)整控件布局的方法。
3)介紹了嵌入式子窗體和彈出式子窗體的概念及創(chuàng)建、使用方法,介紹了在窗體中實(shí)現(xiàn)對(duì)記錄數(shù)據(jù)進(jìn)行常規(guī)操作的方法。涉及章節(jié)及安排: 6.1認(rèn)識(shí)窗體(1學(xué)時(shí))6.2 創(chuàng)建窗體(1學(xué)時(shí))6.3 窗體的設(shè)計(jì)與技巧(2學(xué)時(shí))6.4 創(chuàng)建主子窗體及設(shè)計(jì)(2學(xué)時(shí))思考與訓(xùn)練:
(1)窗體的作用是什么?(2)窗體控件可分為幾大類?(3)如何設(shè)置控件屬性?
第七章 報(bào)表(8學(xué)時(shí))教學(xué)目標(biāo):
1)理解報(bào)表的定義和作用,熟悉報(bào)表的結(jié)構(gòu)和各部分的作用;熟練掌握使用向?qū)гO(shè)計(jì)報(bào)表和使用設(shè)計(jì)器設(shè)計(jì)報(bào)表的方法;了解使用報(bào)表的用途。2)掌握利用對(duì)記錄排序和分組來(lái)設(shè)計(jì)報(bào)表的方法,理解排序和分組對(duì)報(bào)表的重要性;理解條件格式、控件和函數(shù)對(duì)增強(qiáng)報(bào)表的作用并掌握其使用方法;了解特殊報(bào)表的設(shè)計(jì)方法。教學(xué)重點(diǎn): ? 報(bào)表的定義;
? 報(bào)表的構(gòu)成及各部分作用; ? 使用向?qū)?chuàng)建報(bào)表; ? 使用設(shè)計(jì)器創(chuàng)建報(bào)表。? 對(duì)記錄排序和分組; ? 使用條件格式增強(qiáng)報(bào)表; ? 使用空間和函數(shù)增強(qiáng)報(bào)表; ? 創(chuàng)建特殊報(bào)表。教學(xué)難點(diǎn):
? 使用向?qū)?chuàng)建報(bào)表; ? 使用設(shè)計(jì)器創(chuàng)建報(bào)表。? 設(shè)計(jì)排序和分組報(bào)表; ? 創(chuàng)建特殊報(bào)表。本講內(nèi)容概述:
1)主要介紹了數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)實(shí)現(xiàn)報(bào)表打印功能的主要對(duì)象--報(bào)表對(duì)象,介紹了報(bào)表的定義、構(gòu)成方式及創(chuàng)建報(bào)表的方法。2)介紹了通過(guò)向報(bào)表中添加分組和排序、設(shè)置條件格式和使用空間來(lái)增強(qiáng)報(bào)表的邏輯性、功能和層次感。此外,還介紹了創(chuàng)建和設(shè)計(jì)特殊報(bào)表的方法。涉及章節(jié)及安排: 7.1 認(rèn)識(shí)報(bào)表(2 學(xué)時(shí))7.2 創(chuàng)建報(bào)表(2 學(xué)時(shí))7.3 編輯報(bào)表、報(bào)表排序和分組,使用計(jì)算控件(2學(xué)時(shí))7.4 創(chuàng)建子報(bào)表、多列報(bào)表(2 學(xué)時(shí))思考與訓(xùn)練:
(1)報(bào)表與窗體有什么不同?(2)報(bào)表的作用是什么?
(3)怎樣對(duì)分組的數(shù)據(jù)實(shí)現(xiàn)強(qiáng)制分頁(yè)? 作業(yè):第7章習(xí)題
第八章 數(shù)據(jù)訪問(wèn)頁(yè)(2學(xué)時(shí))教學(xué)目標(biāo):了解數(shù)據(jù)訪問(wèn)頁(yè)的概念和作用,熟悉數(shù)據(jù)訪問(wèn)頁(yè)的類型分類,掌握使用向?qū)Ш驮O(shè)計(jì)器創(chuàng)建和設(shè)計(jì)數(shù)據(jù)訪問(wèn)頁(yè)的方法,并了解數(shù)據(jù)訪問(wèn)頁(yè)的使用。此外,了解并掌握利用控件設(shè)計(jì)特殊的數(shù)據(jù)訪問(wèn)頁(yè)的方法,學(xué)會(huì)分組數(shù)據(jù)訪問(wèn)頁(yè)的設(shè)計(jì)方法。教學(xué)重點(diǎn):
? 數(shù)據(jù)訪問(wèn)頁(yè)概述; ? 數(shù)據(jù)訪問(wèn)頁(yè)類型;
? 使用向?qū)?chuàng)建數(shù)據(jù)訪問(wèn)頁(yè); ? 使用設(shè)計(jì)器創(chuàng)建數(shù)據(jù)訪問(wèn)頁(yè); ? 數(shù)據(jù)訪問(wèn)頁(yè)的編輯; ? 分組數(shù)據(jù)訪問(wèn)頁(yè)的設(shè)計(jì)。
教學(xué)難點(diǎn):
? 創(chuàng)建數(shù)據(jù)訪問(wèn)頁(yè); ? 數(shù)據(jù)訪問(wèn)頁(yè)的設(shè)計(jì)。
本講內(nèi)容概述:主要介紹數(shù)據(jù)訪問(wèn)頁(yè)的概念和作用,數(shù)據(jù)訪問(wèn)頁(yè)的種類;闡明了數(shù)據(jù)訪問(wèn)頁(yè)的創(chuàng)建方法和過(guò)程;說(shuō)明了如何在數(shù)據(jù)訪問(wèn)頁(yè)中使用控件的方法和作用。涉及章節(jié):
8.1數(shù)據(jù)訪問(wèn)頁(yè)概述(1學(xué)時(shí))8.2創(chuàng)建數(shù)據(jù)訪問(wèn)頁(yè)(1學(xué)時(shí))
8.3使用設(shè)計(jì)視圖修改數(shù)據(jù)訪問(wèn)頁(yè)(1學(xué)時(shí))8.4數(shù)據(jù)訪問(wèn)頁(yè)的使用(1學(xué)時(shí))思考與訓(xùn)練:
(1)數(shù)據(jù)訪問(wèn)頁(yè)的文件格式?(2)數(shù)據(jù)訪問(wèn)頁(yè)的作用是什么? 課后習(xí)題:第8章習(xí)題
第九章 宏(4學(xué)時(shí))教學(xué)目標(biāo):理解宏的本質(zhì)和定義,了解宏的作用,熟悉宏組和條件宏的基本概念;掌握創(chuàng)建宏、宏組和條件宏的方法及其應(yīng)用方法。學(xué)會(huì)創(chuàng)建和使用AutoExec宏。教學(xué)重點(diǎn):
? 宏、宏組和條件宏的概念;
? 創(chuàng)建宏、宏組和條件宏的方法,理解其用法;
? 理解AutoExec宏與AutoKeys宏的使用方法和創(chuàng)建過(guò)程; ? 能根據(jù)需要?jiǎng)?chuàng)建宏。
教學(xué)難點(diǎn): ? 宏的原理; ? 宏的創(chuàng)建。
本講內(nèi)容概述:主要介紹宏的基本概念以及宏組、條件宏的定義;詳細(xì)介紹了創(chuàng)建宏的基本方法和使用方法。涉及章節(jié)及安排
9.1宏的基本概念與分類(1學(xué)時(shí))9.2創(chuàng)建宏(1學(xué)時(shí))9.3宏的運(yùn)行(0.5學(xué)時(shí))9.4常用宏操作(0.5學(xué)時(shí))
9.5對(duì)象事件屬性簡(jiǎn)介及宏的綜合應(yīng)用(1學(xué)時(shí))思考與訓(xùn)練:
(1)宏的本質(zhì)是什么? 課后練習(xí):第9章習(xí)題0
第十章 VBA編程(6學(xué)時(shí))教學(xué)目標(biāo):
1)理解模塊的本質(zhì)和定義,了解模塊與宏的區(qū)別,理解VBA的程序框架,熟悉并掌握VBA的編程環(huán)境。了解并掌握VBA中的數(shù)據(jù)類型、常量、變量、數(shù)組等基本概念,并熟練掌握它們的定義、使用方法。2)理解并掌握VBA程序設(shè)計(jì)中的順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)的語(yǔ)法定義和使用特點(diǎn),會(huì)設(shè)計(jì)實(shí)現(xiàn)基本的算法,能實(shí)現(xiàn)二選
一、多選一及迭代等常用程序結(jié)構(gòu)。
3)理解并掌握VBA中Sub過(guò)程、自定義函數(shù)及事件過(guò)程的創(chuàng)建方法,了解創(chuàng)建類模塊的過(guò)程,掌握類模塊的用法,同時(shí)掌握標(biāo)準(zhǔn)模塊的創(chuàng)建方法;此外,理解并掌握將宏轉(zhuǎn)換為VBA代碼的原理和方法;掌握簡(jiǎn)單登陸界面的設(shè)計(jì)和實(shí)現(xiàn)方法。
教學(xué)重點(diǎn):
? 模塊的概念; ? 過(guò)程與函數(shù);
? Visual Basic開(kāi)發(fā)環(huán)境;
? VBA的數(shù)據(jù)類型、變量、常量、數(shù)組。? 順序結(jié)構(gòu)語(yǔ)句;
? 條件結(jié)構(gòu)語(yǔ)句與選擇結(jié)構(gòu)語(yǔ)句; ? 循環(huán)結(jié)構(gòu)語(yǔ)句。
? 創(chuàng)建自定義Sub過(guò)程; ? 創(chuàng)建自定義函數(shù); ? 創(chuàng)建事件過(guò)程;
? 創(chuàng)建于窗體和報(bào)表相關(guān)的類模塊; ? 創(chuàng)建與窗體和報(bào)表無(wú)關(guān)的類模塊; ? 創(chuàng)建標(biāo)準(zhǔn)模塊;
? 宏轉(zhuǎn)換為VBA代碼。教學(xué)難點(diǎn):
? 過(guò)程與函數(shù)的定義與使用;
? VBA的數(shù)據(jù)類型、變量和數(shù)組。? 條件結(jié)構(gòu)語(yǔ)句與選擇結(jié)構(gòu)語(yǔ)句; ? 循環(huán)結(jié)構(gòu)語(yǔ)句。? 創(chuàng)建過(guò)程和函數(shù); ? 創(chuàng)建類模塊。本講內(nèi)容概述:
1)主要介紹模塊的定義、模塊與宏的區(qū)別、過(guò)程、事件過(guò)程等模塊的基本概念,講述了VBA的Visual Basic的開(kāi)發(fā)環(huán)境,重點(diǎn)介紹VBA程序設(shè)計(jì)基礎(chǔ)中的數(shù)據(jù)類型、常量、變量、數(shù)組等概念。2)介紹VBA程序設(shè)計(jì)中的三種基本控制結(jié)構(gòu)語(yǔ)句的格式和使用方法,介紹數(shù)據(jù)的輸入和輸出方法,闡明了程序中基本算法的設(shè)計(jì)與實(shí)現(xiàn)方法。1 3)介紹自定義Sub過(guò)程、自定義函數(shù)和事件過(guò)程的創(chuàng)建過(guò)程和方法,創(chuàng)建與使用類模塊的方法,標(biāo)準(zhǔn)模塊的創(chuàng)建方法;此外還介紹了將宏轉(zhuǎn)換為VBA代碼的方法。
涉及章節(jié):
10.1 VBA概述(1學(xué)時(shí))
10.2 VBA編程語(yǔ)言基礎(chǔ)(2學(xué)時(shí))10.3 模塊的使用(2學(xué)時(shí))10.4事件過(guò)程及應(yīng)用舉例(2學(xué)時(shí))思考與訓(xùn)練:
(1)VBA與Visual Basic程序設(shè)計(jì)語(yǔ)言有什么關(guān)系?(2)窗體和報(bào)表的本質(zhì)是類模塊嗎? 課后練習(xí):第10 章習(xí)題2
第三篇:Access1教案內(nèi)容:訂單數(shù)據(jù)庫(kù)基礎(chǔ)內(nèi)容
Access1教案內(nèi)容:
訂單數(shù)據(jù)庫(kù)基礎(chǔ)內(nèi)容
1.創(chuàng)建數(shù)據(jù)庫(kù)。
題目:利用“訂單”模板創(chuàng)建訂單數(shù)據(jù)庫(kù)。
講解各種對(duì)象、講解整體的訂單數(shù)據(jù)庫(kù)。表、查詢、窗體等介紹。
2.訂單數(shù)據(jù)庫(kù)初始化。
題目:設(shè)置公司基本信息、設(shè)置雇員信息、設(shè)置產(chǎn)品信息、設(shè)置送貨方式、設(shè)置付款方式。輸入數(shù)據(jù)要結(jié)合實(shí)際。
注意:表中記錄的輸入和設(shè)置(右鍵):隱藏與取消隱藏列(格式):當(dāng)字段較多時(shí),一些字段可以隱藏掉,先不看;
凍結(jié)與解凍結(jié):當(dāng)字段較多時(shí),為了瀏覽的方便,一些主要的字段會(huì)被凍結(jié)。
注意:字段類型:自動(dòng)編碼時(shí),不要輕易刪除本條記錄,否則會(huì)對(duì)應(yīng)不上,或者全部刪除表。
3.設(shè)置數(shù)據(jù)庫(kù)密碼。
題目:為訂單數(shù)據(jù)庫(kù)設(shè)置密碼:
步驟:首先“文件-打開(kāi)-獨(dú)占方式打開(kāi)”,然后“工具-安全-設(shè)置數(shù)據(jù)庫(kù)密碼(區(qū)分大小寫(xiě))。” 4.表的設(shè)計(jì):字段的各種數(shù)據(jù)類型、主關(guān)鍵字。
題目:在訂單數(shù)據(jù)庫(kù)中,使用表向?qū)?chuàng)建“產(chǎn)品類別”表,包含“類別ID”與“產(chǎn)品類別”。題目:在訂單數(shù)據(jù)庫(kù)中,為“客戶”表的郵政編碼字段設(shè)置輸入掩碼,使其只能輸入6位數(shù)字。
5.編輯關(guān)系。
題目:為“產(chǎn)品類別”表和“產(chǎn)品”表之間建立關(guān)系,并實(shí)施參照完整性約束。
步驟:首先在“產(chǎn)品”表中增加“類別ID”字段。然后建立一對(duì)多的關(guān)系。關(guān)系的編輯和刪除。在“產(chǎn)品”表中添加具體的“類別ID”內(nèi)容。6.創(chuàng)建查詢。
題目:查看訂單數(shù)據(jù)庫(kù)中的查詢對(duì)應(yīng)的SQL語(yǔ)句。如付款總計(jì)查詢。
題目:查詢單價(jià)大于40的產(chǎn)品ID和產(chǎn)品名稱。7.創(chuàng)建窗體。
題目:使用“自動(dòng)創(chuàng)建窗體”的方法來(lái)創(chuàng)建產(chǎn)品的窗體。
題目:使用“窗體向?qū)А苯础爱a(chǎn)品類別”分類的產(chǎn)品列表的數(shù)據(jù)輸入窗體,命名為“分類產(chǎn)品”。步驟:將“產(chǎn)品類別”和“產(chǎn)品”中的字段放入窗體中,注意“產(chǎn)品”中的“類別ID”不放,已經(jīng)有一個(gè)了。形成帶有子窗體的窗體格式。
8.修改窗體。
題目:修改訂單數(shù)據(jù)庫(kù)的切換面板,使其能夠打開(kāi)“分類產(chǎn)品”窗體取代原有的“產(chǎn)品”窗體。
步驟:在主切換面板中單擊“Switchboard items”,選擇“窗體切換面板”進(jìn)行“編輯”,選擇“輸入/查看產(chǎn)品”進(jìn)行編輯,改為“分類產(chǎn)品”完成。9.創(chuàng)建報(bào)表
題目:自動(dòng)創(chuàng)建報(bào)表:產(chǎn)品的報(bào)表。
第四篇:數(shù)據(jù)庫(kù)應(yīng)用基礎(chǔ)實(shí)驗(yàn)報(bào)告
電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)中心
電 子 科 技 大 學(xué)
實(shí)
驗(yàn)
報(bào)
告
一、實(shí)驗(yàn)一: 名稱 創(chuàng)建數(shù)據(jù)庫(kù)
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
實(shí)驗(yàn)要求學(xué)生掌握創(chuàng)建數(shù)據(jù)庫(kù)的方法及相關(guān)操作,并且創(chuàng)建一個(gè)包含五個(gè)表的數(shù)據(jù)庫(kù)STUD:系別代碼表 表名dep,教師表 表名teacher,學(xué)生表 表名stud,課程表 表名course,選課表 表名sc。
四、實(shí)驗(yàn)原理:
本實(shí)驗(yàn)主要是“ create table 表名
(列名1 類型1(not)null,列名2 類型2(not)null,……,primary key(列名));”語(yǔ)句的應(yīng)用,來(lái)實(shí)現(xiàn)表的建立。同時(shí)還可能用到 “drop table 表名”,“alter table 表名 drop column 列名”等語(yǔ)句。
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
具體步驟見(jiàn)實(shí)驗(yàn)指導(dǎo)書(shū)。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
create table COURSE(CID VARCHAR(8)not null,CNAME VARCHAR(30)not null,CID_PRE VARCHAR(8),CREDITS NUMERIC(3,1)not null,primary key(CID));
create table DEP(DEPID VARCHAR(8)not null,DEPNAME VARCHAR(20)not null,primary key(DEPID));create table SC(SID VARCHAR(11)not null,CID VARCHAR(8)not null,TID varchar(8)not null,SCORE INTEGER,primary key(sid,cid,tid));create table STUDENT(SID VARCHAR(11)not null,SNAME VARCHAR(8)not null,sex char(2)not null,DEPID VARCHAR(20),BIRTHD DATETIME,SEMAIL VARCHAR(20),HOMEADDR VARCHAR(40),primary key(SID));create table TEACHER(TID varchar(8)not null,TNAME varchar(8)not null,TITLE VARCHAR(10),DEPID VARCHAR(20),primary key(TID));
八、實(shí)驗(yàn)結(jié)論:
心得體會(huì)和改進(jìn)建議:確實(shí)可以用create table語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)庫(kù)表的創(chuàng)建,一開(kāi)始就要想好各個(gè)表的分配和各種定義的合理性,避免以后大幅度的改動(dòng)表。
一、實(shí)驗(yàn)二: 名稱 備份和恢復(fù)
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
向數(shù)據(jù)庫(kù)中添加樣本數(shù)據(jù),學(xué)習(xí)DB2數(shù)據(jù)庫(kù)的恢復(fù)和備份。
四、實(shí)驗(yàn)原理:
利用分離與附加實(shí)現(xiàn)數(shù)據(jù)的備份與恢復(fù)。用“insert into 表名 values(列名1 類型1(not)null,列名2 類型2(not)null,……)”語(yǔ)句實(shí)現(xiàn)向表中添加數(shù)據(jù)。
電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)中心
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
用附加命令載入數(shù)據(jù)庫(kù),然后在相應(yīng)新建查詢中用insert語(yǔ)句輸入準(zhǔn)備的數(shù)據(jù)。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
insert into dep values('601','計(jì)算機(jī)科學(xué)與工程');insert into dep values('602','軟件工程');insert into dep values('603','信息安全');insert into dep values('604','IS');
insert into teacher values('T01','教師1','教授','601');insert into teacher values('T02','教師2','工程師','601');insert into teacher values('T03','教師3','副教授','602');insert into teacher values('T04','教師4','講師','602');insert into teacher values('T05','教師5','高工','603');insert into teacher values('T06','教師6','高工','603');
insert into course values('6001','計(jì)算機(jī)組成原理',null,3);insert into course values('6002','操作系統(tǒng)','6001',3);insert into course values('6003','數(shù)據(jù)結(jié)構(gòu)',null,3);insert into course values('6004','數(shù)據(jù)庫(kù)原理',null,3);insert into course values('6011','數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)',null,2);insert into course values('6005','Computer Network',null,2);insert into course values('6006','Objected JAVA',null,2);insert into course values('6007','Software Engeneering','6006',2);insert into course values('6008','UNIX Basic',null,2);insert into course values('6009','UNIX OS Design','6008',2);
insert into student values('601','張1','男','602','1990-10-20','587627416@qq.com','四川');insert into student values('2406010103','張2','女','601','1991-06-10','123627416@qq.com','湖南');insert into student values('2406030101','王1','男','603','1990-05-06','4827416@qq.com','新疆');insert into student values('2406020105','王2','女','602','1990-07-15','90627416@qq.com','云南');insert into student values('2406030110','吳1','女','603','1991-08-14','367627416@qq.com','廣西');
insert into sc values('601','6002','T03',50);insert into sc values('2406010103','6002','T02',60);insert into sc values('2406030101','6001','T01',70);insert into sc values('2406020105','6004','T04',80);
insert into sc values('2406030110','6006','T06',90);
八、實(shí)驗(yàn)結(jié)論、心得體會(huì)和改進(jìn)建議:
插入數(shù)據(jù)要仔細(xì),以免不必要的麻煩。
一、實(shí)驗(yàn)三:
名稱
數(shù)據(jù)庫(kù)的完整性
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
通過(guò)設(shè)置表的檢查約束、外鍵約束體會(huì)數(shù)據(jù)庫(kù)完整性的含義,約束條件下數(shù)據(jù)修改操作的限制,以及實(shí)現(xiàn)修改操作的技巧。
四、實(shí)驗(yàn)原理:
用“alter table 表名 add constraint 約束名 check 條件”,“alter table 表名1 add constraint 外鍵名 foreign key(列名)references 表名2(列名)”分別實(shí)現(xiàn)檢查約束與設(shè)置外鍵約束的功能。以及用“delete from 表名 where 條件”,“update 表名 set 列名=()where 條件”來(lái)刪除和修改滿足條件的數(shù)據(jù)。
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:
電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)中心
SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
用附加命令載入數(shù)據(jù)庫(kù),然后在相應(yīng)新建查詢中輸入相應(yīng)代碼。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
alter table sc add constraint fk_sc_student_sid foreign key(sid)references student(sid);alter table sc add constraint fk_sc_teacher_tid foreign key(tid)references teacher(tid);alter table sc add constraint fk_sc_course_cid foreign key(cid)references course(cid);
alter table student add constraint check_student_sname check(sname is not null);alter table sc add constraint check_sc_course check(score>=0 and score<=100);alter table student add constraint check_student_sex check(sex='男' or sex='女');alter table student add constraint check_student_semail check(semail like '%@%');
delete from sc where(sid='601');update student set sid='20060601' where(sid='601');insert into sc values('20060601','6002','T03',50);
八、實(shí)驗(yàn)結(jié)論、心得體會(huì)和改進(jìn)建議:
注意按一定的習(xí)慣來(lái)書(shū)寫(xiě)約束名和鍵名,以便利于修改和刪除。
一、實(shí)驗(yàn)四: 名稱 數(shù)據(jù)的修改
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
練習(xí)UPDATEV、DELETE命令的使用,實(shí)現(xiàn)對(duì)數(shù)據(jù)的修改和刪除。
四、實(shí)驗(yàn)原理:
用“delete from 表名 where 條件”,“update 表名 set 列名=()where 條件”來(lái)刪除和修改滿足條件的數(shù)據(jù)。
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
用附加命令載入數(shù)據(jù)庫(kù),然后在相應(yīng)新建查詢中輸入相應(yīng)代碼。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
update dep set depname='Information' where(depname='IS');delete from sc where(sid like '%601%' and cid='6002');delete from sc where(sid like '%603%' and cid='6001');delete from sc where(sid='2406010103');update student set sid='2406030102' where(sid='2406010103');insert into sc values('2406030102','6002','T02',60);
八、實(shí)驗(yàn)結(jié)論、心得體會(huì)和改進(jìn)建議:
對(duì)于要修改和刪除的數(shù)據(jù)需要注意主外鍵。比如對(duì)于要修改被引用外鍵的數(shù)據(jù),需要先刪除被引用外鍵的數(shù)據(jù),才能順利修改或刪除。
電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)中心
一、實(shí)驗(yàn)五: 名稱 簡(jiǎn)單查詢、多表查詢
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
練習(xí)用SELECT查詢語(yǔ)句,設(shè)置查詢條件,實(shí)現(xiàn)單表查詢。練習(xí)使用SELECT語(yǔ)句從多個(gè)表中查詢數(shù)據(jù),表的內(nèi)連接、左外連接、右外連接的使用以及設(shè)置連接條件,理解連接條件和查詢條件的目的和功能上的區(qū)別。
四、實(shí)驗(yàn)原理:
用“select 列名1(as 列名),列名2…… from 表名 where 查詢條件”來(lái)實(shí)現(xiàn)有條件的簡(jiǎn)單查詢。用“select * from 表名1 join 表名2 on 連接條件 having(where)查詢條件”語(yǔ)句來(lái)實(shí)現(xiàn)多表連接查詢。以及用union,except,intersect來(lái)實(shí)現(xiàn)查找結(jié)果的并、差、交操作。還有用“datediff(year,生日,現(xiàn)在日期)”語(yǔ)句實(shí)現(xiàn)年齡的計(jì)算。
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
用附加命令載入數(shù)據(jù)庫(kù),然后在相應(yīng)新建查詢中輸入相應(yīng)代碼。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
select sname from student where(datediff(year,birthd,'2011-10-7')between 20 and 22);select sname,datediff(year,birthd,'2011-10-7')as year,depname from student join dep on student.depid=dep.depid where datediff(year,birthd,'2011-10-7')between 20 and 22;select * from teacher where title='副教授';select sid,sname,semail from student where sname like '張%';select sid,cid from sc where score is not null;select student.*,sc.cid,sc.tid,sc.score from student join sc on student.sid=sc.sid;select student.*,cname,tname,score from((sc join student on student.sid=sc.sid)join teacher on teacher.tid=sc.tid)join course on course.cid=sc.cid where score<60;(select sid from sc where cid='6001')intersect(select sid from sc where cid='6002');
八、實(shí)驗(yàn)結(jié)論、心得體會(huì)和改進(jìn)建議:
用union,except,intersect實(shí)現(xiàn)查詢結(jié)果的并、差、交時(shí),表的列數(shù)必須一樣,結(jié)果列名顯示前一個(gè)表的。查詢時(shí),是根據(jù)引用的表及算法得出的一個(gè)集合,原來(lái)的表沒(méi)有任何變化。并且可以用“as 新列名”為查詢結(jié)果的列重新命名。多表連接查詢時(shí),因?yàn)闀?huì)有兩行的連接條件,不要用它作查詢條件。還有查詢項(xiàng)可以是引用表的表達(dá)式或函數(shù),查詢條件一樣可以。
一、實(shí)驗(yàn)六: 名稱 分組統(tǒng)計(jì)查詢
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
練習(xí)使用聚集函數(shù)count(),max(),min(),avg(),sum()等在SQL命令中實(shí)現(xiàn)統(tǒng)計(jì)功能。使用GROUP BY
電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)中心
子句實(shí)現(xiàn)分組查詢,以及聚集函數(shù)在分組查詢中的應(yīng)用。體會(huì)分組查詢的功能特點(diǎn)。
四、實(shí)驗(yàn)原理:
用“select 列名,聚集函數(shù) from 表名 group by having查詢條件”或“select 列名,聚集函數(shù) from 表名 where 包含‘列名’的的查詢條件”來(lái)實(shí)現(xiàn)分組查詢。
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
用附加命令載入數(shù)據(jù)庫(kù),然后在相應(yīng)新建查詢中輸入相應(yīng)代碼。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
select count(*)as '選修數(shù)據(jù)庫(kù)課程的人數(shù)' from sc where cid='6003';select sid as '學(xué)號(hào)',count(cid)as '選課門(mén)數(shù)' from sc group by sid;select sid as '學(xué)號(hào)',sum(score)as '總成績(jī)' from sc group by sid;select count(sid)as '選修數(shù)據(jù)庫(kù)課且成績(jī)分以上人數(shù)' from sc where sid in(select sid from sc where cid='6003' and score>=60);select score as '數(shù)據(jù)庫(kù)課最高成績(jī)',sname as '姓名'from sc join student on sc.sid=student.sid where score=(select max(score)from sc group by cid having cid='6003');select cname as '課程名',avg(score)as '平均成績(jī)' from sc join course on sc.cid=course.cid group by cname;select cname as '課程名',count(sid)as '選課人數(shù)' from sc join course on sc.cid=course.cid group by cname;select sname as '選修5門(mén)課以上學(xué)生姓名',semail from student where sid in(select sid from sc group by sid having count(cid)>=5);
八、實(shí)驗(yàn)結(jié)論、心得體會(huì)和改進(jìn)建議:
分組查詢作為查詢主體時(shí),只能顯現(xiàn)分組列名和聚集函數(shù)部分。把他放在條件位置,作為查詢條件集合時(shí),能夠?qū)崿F(xiàn)多列甚至是多表連接的多列的顯示。另外聚集函數(shù)可以不顯示,而作為查
詢條件出現(xiàn),跟在having后。
一、實(shí)驗(yàn)七: 名稱 集合操作、子查詢
二、實(shí)驗(yàn)學(xué)時(shí):4
三、實(shí)驗(yàn)內(nèi)容和目的:
IN、EXISTS、NOT EXISTS 運(yùn)算在WHERE子句中的應(yīng)用;靜態(tài)集合和由SELECT命令產(chǎn)生的動(dòng)態(tài)結(jié)果集運(yùn)算。
四、實(shí)驗(yàn)原理:
子查詢即把查詢的結(jié)果當(dāng)做另一個(gè)查詢的條件,通過(guò)嵌套語(yǔ)句來(lái)實(shí)現(xiàn)復(fù)雜的查詢。因?yàn)樽硬樵兊慕Y(jié)果很可能是一個(gè)集合,需要運(yùn)用集合之間的運(yùn)算,比如in、exists、not exists的運(yùn)用。
五、實(shí)驗(yàn)器材(設(shè)備、元器件)
操作系統(tǒng):Windows 2000/XP 編程環(huán)境:SQL Server Management Studio
六、實(shí)驗(yàn)步驟:
用附加命令載入數(shù)據(jù)庫(kù),然后在相應(yīng)新建查詢中輸入相應(yīng)代碼。
七、實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析:
select sname as '姓名',datediff(year,birthd,'2011-10-7')as '年齡' from student where birthd>(select birthd from student where depid='603' and sid='2406030101');
電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)中心
select sname,depname,semail from student join dep on student.depid=dep.depid where sid in((select sid from student)except(select sid from sc));select sname from student where sid in(select sid from sc group by sid having count(cid)=(select count(cid)from course));select sname from student where sid in(select sid from sc where cid='6002' intersect select sid from sc where cid='6001');
八、實(shí)驗(yàn)結(jié)論、心得體會(huì)和改進(jìn)建議:
對(duì)于子查詢是集合的情況,是不能跟在=,>,<>等條件運(yùn)算符后面的。對(duì)于聚集函數(shù)本身是查詢結(jié)果時(shí),where和having后面只能定義與聚合函數(shù)有關(guān)的條件??梢酝ㄟ^(guò)添加子查詢的方式,來(lái)實(shí)現(xiàn)多條件查詢條件。
第五篇:第一章 VF數(shù)據(jù)庫(kù)基礎(chǔ)教案
第一章 VF數(shù)據(jù)庫(kù)基礎(chǔ)
一、什么叫數(shù)據(jù):
是指存儲(chǔ)在某種媒體上的能夠識(shí)別的物理符號(hào)如:數(shù)字、字母、文字、特殊字符組成的文本形式數(shù)據(jù),還有圖形、動(dòng)畫(huà)、影像、聲音等多媒體數(shù)據(jù),而最多、最常用的是文字?jǐn)?shù)據(jù)。注:數(shù)據(jù)包括:描述事物特性的內(nèi)容和存儲(chǔ)在媒體上的數(shù)據(jù)形式。
二、什么叫數(shù)據(jù)處理?
是指將數(shù)據(jù)轉(zhuǎn)換成信息的過(guò)程。
三、數(shù)據(jù)處理的目的(其中核心問(wèn)題是數(shù)據(jù)管理)計(jì)算機(jī)對(duì)數(shù)據(jù)的管理發(fā)展階段及特點(diǎn):經(jīng)歷了五個(gè)階段:
1、人工管理階段:20世紀(jì)50年代;數(shù)據(jù)和程序不具有獨(dú)立性,無(wú)法進(jìn)行長(zhǎng)期保存,數(shù)據(jù)不能共享,數(shù)據(jù)冗余大。
2、文件管理階段:20世紀(jì)50年代后期至60年代中后期,程序和數(shù)據(jù)有一定的獨(dú)立性,程序和數(shù)據(jù)分開(kāi)存儲(chǔ)。
3、數(shù)據(jù)庫(kù)系統(tǒng)管理;從20世紀(jì)60年代后期開(kāi)始:特點(diǎn):數(shù)據(jù)和程序具有較高的獨(dú)立性,實(shí)現(xiàn)了數(shù)據(jù)共享,減少數(shù)據(jù)冗余(注:但并不是完全避免數(shù)據(jù)冗余)
4、分布式數(shù)據(jù)庫(kù)系統(tǒng):20世紀(jì)70年代后期,是數(shù)據(jù)庫(kù)技術(shù)和計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)緊密結(jié)合的產(chǎn)物。
5、面向?qū)ο髷?shù)據(jù)庫(kù)系統(tǒng):20世紀(jì)80年代引入計(jì)算機(jī)科學(xué)領(lǐng)域的一種新的程序設(shè)計(jì)技術(shù)模型 特點(diǎn):就是按照人們認(rèn)識(shí)世界和改造世界的習(xí)慣方法對(duì)現(xiàn)實(shí)世界的客觀事物對(duì)象進(jìn)行最自然的最有效的抽象和表達(dá),同時(shí)又以各種嚴(yán)格高效的行為規(guī)范和機(jī)制實(shí)施客觀事物的有效模擬和處理。注:在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中:數(shù)據(jù)庫(kù)系統(tǒng)可以實(shí)現(xiàn)數(shù)據(jù)共享。
一、數(shù)據(jù)庫(kù)系統(tǒng):
1、數(shù)據(jù)庫(kù)(DB):是存儲(chǔ)在計(jì)算機(jī)設(shè)備上結(jié)構(gòu)化的相關(guān)數(shù)據(jù)的集合,它不僅包括描述事物數(shù)據(jù)本身,而且還包括相關(guān)事物之間的聯(lián)系。可以被多個(gè)和戶、多個(gè)應(yīng)用程序共享
2、數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)(DBAS):是指系統(tǒng)開(kāi)發(fā)人員利數(shù)據(jù)庫(kù)系統(tǒng)資源開(kāi)發(fā)出來(lái)的。
3、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS):是對(duì)數(shù)據(jù)庫(kù)的建立,使用和維護(hù)進(jìn)行管理。
4、數(shù)據(jù)庫(kù)系統(tǒng)(DBS):是指引進(jìn)數(shù)據(jù)庫(kù)技術(shù)后的計(jì)算機(jī)系統(tǒng),實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量相關(guān)數(shù)據(jù)提供數(shù)據(jù)處理和信息資源共享的便利條件。
注:visual Foxpro中的數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是操作系統(tǒng)支持下的系統(tǒng)軟件;
數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS三者之間的關(guān)系是:DBS包括DB和DBMS。
二、數(shù)據(jù)庫(kù)系統(tǒng)的組成:硬件系統(tǒng)、數(shù)據(jù)庫(kù)集合、數(shù)據(jù)庫(kù)管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫(kù)管理員和用戶。
注:數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn):
1、實(shí)現(xiàn)數(shù)據(jù)共享、減少數(shù)據(jù)冗余
2、采用特定的數(shù)據(jù)模型(即稱為關(guān)系數(shù)據(jù)模型)
3、具有較高的數(shù)據(jù)獨(dú)立性
4、有統(tǒng)一的數(shù)據(jù)控制功能。
一、數(shù)據(jù)模型:
1、實(shí)體:客觀存在并且可以互相區(qū)別的事物稱為實(shí)體,實(shí)體可以是實(shí)際的事物,也可能是抽象的事件如:學(xué)生、課本屬于實(shí)際事物;訂貨、比賽是比較抽象的;
2、實(shí)體的屬性:描述實(shí)體的特性稱為屬性;如學(xué)生實(shí)體用(學(xué)號(hào)、姓名、性別、出生日期)等若干屬性的描述。
3、實(shí)體集和實(shí)體型:
屬性值的集合表示一個(gè)實(shí)體,而屬性的集合表示一種實(shí)體的類型稱為實(shí)體型,同類的實(shí)體的結(jié)合稱為實(shí)體集。
所以在VF中“表”用來(lái)存放同一類實(shí)體,即實(shí)體集。注:表中包括若干字段,字段就是實(shí)體的屬性。
字段值的集合組成表中的一條記錄,代表一個(gè)具體的實(shí)體,即每個(gè)紀(jì)錄表示一個(gè)實(shí)體。
一、實(shí)體間聯(lián)系及聯(lián)系的種類:
1、一對(duì)一:指主表中的每一條記錄只與相關(guān)表中的一條記錄相關(guān)聯(lián)。
2、一對(duì)多:指主表中的每一條記錄與相關(guān)表中的多條記錄相關(guān)聯(lián)。
3、多對(duì)多:表現(xiàn)為一個(gè)表中的多個(gè)記錄在相關(guān)表中同樣有多個(gè)記錄與其匹配
二、數(shù)據(jù)模型:
1、層次數(shù)據(jù):用樹(shù)型結(jié)構(gòu)表示實(shí)體及其實(shí)體間聯(lián)系的模型稱為層次模型;像倒掛的樹(shù),用樹(shù)型結(jié)構(gòu)表示;
2、網(wǎng)狀模型:用網(wǎng)狀結(jié)構(gòu)表示;
3、關(guān)系模型:(非格式模型)用二維表表示)
三、關(guān)系數(shù)據(jù)庫(kù):一個(gè)關(guān)系是由一個(gè)二維表來(lái)定義的,一個(gè)表就是一個(gè)關(guān)系;也就是說(shuō)關(guān)系數(shù)據(jù)庫(kù)是由若干表格組成的,在表格中:每行代表著每個(gè)記錄,而每列則代表著該表存在的不同屬性。
1、關(guān)系:一個(gè)關(guān)系就是一張二維表,通常將一個(gè)沒(méi)有重復(fù)行、重復(fù)列的二維表看成一個(gè)關(guān)系,每個(gè)關(guān)系都有一個(gè)關(guān)系名。關(guān)系文件擴(kuò)展名為.dbf,稱為“表”
2、元組:水平方向的行稱為元組,每一行就是一個(gè)元組,元組對(duì)應(yīng)存儲(chǔ)文件中的一個(gè)具體記錄,一個(gè)元組對(duì)應(yīng)表中的一個(gè)記錄。
3、屬性:二維表中垂直方向的列稱為屬性,每一列都有一個(gè)屬性名,在VF中屬性表示為字段名,每個(gè)字段的數(shù)據(jù)類型、寬度等在創(chuàng)建表的結(jié)構(gòu)時(shí)就規(guī)定了。
在VF中一個(gè)屬性對(duì)表中的一個(gè)字段,屬性名對(duì)應(yīng)字段名,屬性值對(duì)應(yīng)于各條記錄的字段值。
4、域名:字段的取值范圍:指不同元組對(duì)同一個(gè)屬性的取值所限定的范圍。
5、關(guān)鍵字:屬性或?qū)傩缘慕M合能惟一標(biāo)識(shí)各個(gè)元組(實(shí)體)
6、外部關(guān)鍵字:在本表中不是的關(guān)鍵字,而在另外一個(gè)表中是關(guān)鍵字,本表的這個(gè)字段(屬性)稱為外部關(guān)鍵字。
四、關(guān)系的特點(diǎn):
1、關(guān)系必須規(guī)范,表中不能在含表;
2、關(guān)系中不允許有完全相同的元組(記錄)存在;
3、關(guān)系中不允許有相同的屬性名(字段名)存在;
4、關(guān)系中元組的次序無(wú)關(guān)緊要;
5、關(guān)系中屬性的次序元關(guān)緊要; 注:實(shí)際關(guān)系模型:
一個(gè)具體的關(guān)系模型由若干個(gè)關(guān)系模式組成。
一、關(guān)系運(yùn)算: 傳統(tǒng)的關(guān)系運(yùn)算:并、差、交;
1、并:兩個(gè)相同結(jié)構(gòu)關(guān)系的并是由屬于這兩個(gè)關(guān)系的元組組成的集合。
如:有兩個(gè)結(jié)構(gòu)相同的學(xué)生關(guān)系R1、R2,分別存放兩個(gè)班的學(xué)生,把第二個(gè)班的學(xué)生記錄追加到第一個(gè)班的學(xué)生記錄后面就是這兩個(gè)關(guān)系的并集。
2、差:設(shè)有兩個(gè)相同結(jié)構(gòu)的關(guān)系R和S,R差S是結(jié)果是由屬于R但不屬于S的元組組成的集合,即差運(yùn)算的結(jié)果是從R中去掉S中也有的元組。
3、交:兩個(gè)具有相同結(jié)構(gòu)的關(guān)系R和S,是由既屬于R又屬于S的元組組成的集合。既運(yùn)算的結(jié)果是R和S的共同元組。1 專門(mén)的關(guān)系運(yùn)算:選擇、投影、聯(lián)接;
1、選擇:從關(guān)系中找出滿足條件元組的操作,是針對(duì)行的運(yùn)算。如;forwherewhile等是選擇運(yùn)算。選擇條件以邏輯表達(dá)式給出,使得邏輯表達(dá)式的值為真的元組被選取,即從水平方向抽取記錄形成新的關(guān)系,其關(guān)系模式不變?nèi)纾簭膶W(xué)生表中找出某同學(xué)的的考試成績(jī);
2、投影:從關(guān)系中指定若干個(gè)屬性組成新的關(guān)系,是針對(duì)列的運(yùn)算,如:fieldsselect等是連接運(yùn)算。是從列的角度進(jìn)行的運(yùn)算,相當(dāng)于對(duì)列進(jìn)行垂直分解。如:從學(xué)生表中查詢學(xué)員的所有姓名、性別、出生日期的操作。
3、連接:將兩個(gè)關(guān)系拼接成一個(gè)更寬的關(guān)系,是針對(duì)橫向運(yùn)算,生成的關(guān)系中包含滿足聯(lián)接條件的元組,其聯(lián)接過(guò)程是通過(guò)聯(lián)接條件來(lái)控制的,聯(lián)接條件中將出現(xiàn)兩個(gè)表中的公共屬性名,或得具有相同語(yǔ)義、可比的屬性,聯(lián)接是滿足條件的所有記錄。如:joinon等是連接運(yùn)算。如:設(shè)有職工和工資兩個(gè)表,要查詢基本工資高于800元的職工姓名,性別,職稱、基本工資、實(shí)發(fā)工資、獎(jiǎng)金。
注:選擇、投影運(yùn)算對(duì)象是一個(gè)關(guān)系,而連接運(yùn)算對(duì)象是多個(gè)關(guān)系。這三種關(guān)系運(yùn)算的最終結(jié)果是關(guān)系(二維表)
自然連接:是指去掉重復(fù)屬一的等值連接。
其義意為:在聯(lián)接運(yùn)算中,按照字段值對(duì)應(yīng)相等為條件進(jìn)行的聯(lián)接操作稱為等值聯(lián)接,自然聯(lián)接是去掉重復(fù)屬性的等值聯(lián)接,自然聯(lián)接是最常用的聯(lián)接運(yùn)算。1 程序設(shè)計(jì)的步驟: 設(shè)計(jì)原則:
1、關(guān)系數(shù)據(jù)的設(shè)計(jì)應(yīng)遵從概念單一化“一事一地”原則。
2、避免在表之間出現(xiàn)重復(fù)字段。
3、表中的字段必須是原始數(shù)據(jù)或基本數(shù)據(jù)元素。
4、用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間聯(lián)系。
二、設(shè)計(jì)步驟:
1、需求分析、2、確定需要的表;
3、確定所需字段;
4、確定關(guān)系;
5、設(shè)計(jì)求精