計算機(jī)二級Access復(fù)習(xí)重點_第1頁
計算機(jī)二級Access復(fù)習(xí)重點_第2頁
計算機(jī)二級Access復(fù)習(xí)重點_第3頁
計算機(jī)二級Access復(fù)習(xí)重點_第4頁
計算機(jī)二級Access復(fù)習(xí)重點_第5頁
已閱讀5頁,還剩73頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

全國計算機(jī)等級考試二級Access講義

第1章數(shù)據(jù)庫基礎(chǔ)知識

i.i數(shù)據(jù)庫基礎(chǔ)知識

i.i.i計算機(jī)數(shù)據(jù)管理的發(fā)展

數(shù)據(jù)(Data)

數(shù)據(jù)是描述現(xiàn)實世界事物的符號記錄,是用物理符號記錄的可以鑒別的信息。包括文

字、圖形、聲音等,他們都是用來描述事物特性的。

數(shù)據(jù)處理

數(shù)據(jù)處理是對各種類型的數(shù)據(jù)進(jìn)行收集、存儲、分類、計算、加工、檢索與傳輸?shù)倪^

程。包括:收集原始數(shù)據(jù)、編碼轉(zhuǎn)換、數(shù)據(jù)輸入、數(shù)據(jù)處理、數(shù)據(jù)輸出等。

數(shù)據(jù)處理的中心問題是數(shù)據(jù)管理。

數(shù)據(jù)管理技術(shù)的發(fā)展,與計算機(jī)硬件(主要是外部存儲器)、系統(tǒng)軟件及計算機(jī)應(yīng)用的范圍

有著密切的聯(lián)系。數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)歷了以下幾個階段:人工管理階段、文件系統(tǒng)階

段、數(shù)據(jù)庫系統(tǒng)階段、分布式數(shù)據(jù)庫系統(tǒng)階段和對象數(shù)據(jù)庫系統(tǒng)階段。

1.人工管理階段

這一階段是指20世紀(jì)50年代中期以前,計算機(jī)主要用于科學(xué)計算,當(dāng)時的計算機(jī)硬件狀

況是:外存只有磁帶、卡片、紙帶,沒有磁盤等直接存取的存儲設(shè)備;軟件狀況是:沒有

操作系統(tǒng),沒有管理數(shù)據(jù)的軟件,數(shù)據(jù)處理方式是批處理。

人工管理階段的特點是:數(shù)據(jù)不保存、數(shù)據(jù)無專門軟件進(jìn)行管理(數(shù)據(jù)冗余)、數(shù)據(jù)不共享、

數(shù)據(jù)不具有獨立性、數(shù)據(jù)無結(jié)構(gòu)。

2.文件系統(tǒng)階段

這一階段從20世紀(jì)50年代后期到60年代中期,計算機(jī)硬件和軟件都有了一定的發(fā)展。計

算機(jī)不僅用于科學(xué)計算,還大量用于管理。這時硬件方面已經(jīng)有了磁盤、磁鼓等直接存取

的存儲設(shè)備。在軟件方面,操作系統(tǒng)中已經(jīng)有了數(shù)據(jù)管理軟件,一般稱為文件系統(tǒng)。處理

方式上不僅有了文件批處理,而且能夠聯(lián)機(jī)實時處理。

文件系統(tǒng)階段的特點:數(shù)據(jù)管理由文件管理系統(tǒng)完成;數(shù)據(jù)共享性差、冗余度大;數(shù)據(jù)

獨立性差;數(shù)據(jù)可長期保存。

3.數(shù)據(jù)庫系統(tǒng)階段

20世紀(jì)60年代末數(shù)據(jù)管理進(jìn)入新時代——數(shù)據(jù)庫系統(tǒng)階段。數(shù)據(jù)庫系統(tǒng)階段出現(xiàn)了統(tǒng)一管

理數(shù)據(jù)的專門軟件系統(tǒng),即數(shù)據(jù)庫管理系統(tǒng)。數(shù)據(jù)庫系統(tǒng)是一種較完善的高級數(shù)據(jù)管理方

式,也是當(dāng)今數(shù)據(jù)管理的主要方式,獲得了廣泛的應(yīng)用。數(shù)據(jù)庫系統(tǒng)階段的特點:數(shù)據(jù)結(jié)

構(gòu)化;數(shù)據(jù)共享程度高;數(shù)據(jù)獨立性強(qiáng);數(shù)據(jù)冗余度??;加強(qiáng)對數(shù)據(jù)的保護(hù)

4.分布式數(shù)據(jù)庫系統(tǒng)階段

分布式數(shù)據(jù)庫系統(tǒng)是由若干個站集合而成。這些站又稱為節(jié)點,它們在通訊網(wǎng)絡(luò)中聯(lián)接在

一起,每個節(jié)點都是一個獨立的數(shù)據(jù)庫系統(tǒng),它們都擁有各自的數(shù)據(jù)庫、中央處理機(jī)、終

端,以及各自的局部數(shù)據(jù)庫管理系統(tǒng)。因此分布式數(shù)據(jù)庫系統(tǒng)可以看作是一系列集中式數(shù)

據(jù)庫系統(tǒng)的聯(lián)合。它們在邏輯上屬于同一系統(tǒng),但在物理結(jié)構(gòu)上是分布式的。

5.面向?qū)ο髷?shù)據(jù)庫系統(tǒng)階段

面向?qū)ο缶幊蹋∣bjectOrientedProgramming,OOP,面向?qū)ο蟪绦蛟O(shè)計)是一種計算機(jī)

編程架構(gòu)。OOP的一條基本原則是計算機(jī)程序是由單個能夠起到子程序作用的單元或?qū)ο?/p>

組合而成。OOP達(dá)到了軟件工程的三個主要目標(biāo):重用性、靈活性和擴(kuò)展性。面向?qū)ο髷?shù)

據(jù)庫吸收了面向?qū)ο蟪绦蛟O(shè)計方法的核心概念和基本思想,采用面向?qū)ο蟮挠^點來描述現(xiàn)

實世界實體(對象)的邏輯組織、對象之間的限制和聯(lián)系等。

1.1.2數(shù)據(jù)庫系統(tǒng)

1.數(shù)據(jù)

描述事物的物理符號序列稱為數(shù)據(jù)(Data)?

描述事物的物理符號可以是用來表示長度、體積、重量之類的數(shù)字?jǐn)?shù)值,也可以

是人名或地名、圖形、圖像、動畫、影像、聲音等非數(shù)值數(shù)據(jù)。

2.數(shù)據(jù)庫

數(shù)據(jù)庫(DataBase,DB),顧名思義,是存放數(shù)據(jù)的倉庫。是長期存放在計算機(jī)內(nèi),有組

織的、大量的、可共享的數(shù)據(jù)集合。

數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲,具有較小的冗余度、較高的數(shù)

據(jù)獨立性和易擴(kuò)展性,并可為多個用戶、多個應(yīng)用程序共享。

3.數(shù)據(jù)庫應(yīng)用系統(tǒng)

數(shù)據(jù)庫應(yīng)用系統(tǒng)是為特定應(yīng)用開發(fā)的數(shù)據(jù)庫應(yīng)用軟件系統(tǒng)。

數(shù)據(jù)庫管理系統(tǒng)為數(shù)據(jù)的定義、存儲、查詢和修改提供支持,而數(shù)據(jù)庫應(yīng)用系統(tǒng)是對

數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行處理和加工的軟件,它面向特定應(yīng)用。

一般在不引起混淆的情況下常常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫.

4.數(shù)據(jù)庫管理系統(tǒng)

數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,DBMS)是位于用戶與操作系統(tǒng)(OS)

之間的數(shù)據(jù)管理軟件,是數(shù)據(jù)庫系統(tǒng)的核心軟件。其主要功能包括以下幾個方面(P5頁)

(1)數(shù)據(jù)定義

(2)數(shù)據(jù)操縱

(3)數(shù)據(jù)庫的運行管理

(4)數(shù)據(jù)的組織、存儲和管理

(5)數(shù)據(jù)庫的建立和維護(hù)

(6)數(shù)據(jù)通信接口

5.數(shù)據(jù)庫系統(tǒng)

數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,DBS)是指擁有數(shù)據(jù)庫技術(shù)支持的計算機(jī)系統(tǒng)。它可以實

現(xiàn)有組織地、動態(tài)地存儲大量相關(guān)數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享服務(wù)。數(shù)據(jù)庫系統(tǒng)

由硬件系統(tǒng)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫管理員(DataBase

Administrator,DBA)和用戶組成。

數(shù)據(jù)庫系統(tǒng)的特點:

(1)實現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余

(2)采用特定的數(shù)據(jù)模型

(3)具有較高的數(shù)據(jù)獨立性

(4)有統(tǒng)一的數(shù)據(jù)控制功能

1.1.3數(shù)據(jù)模型

模型是現(xiàn)實世界特征的模擬和抽象。要將現(xiàn)實世界轉(zhuǎn)變?yōu)闄C(jī)器能夠識別的形式,必須經(jīng)過

兩次抽象,即使用某種概念模型為客觀事物建立概念級的模型,將現(xiàn)實世界抽象為信息世

界,然后再把概念模型轉(zhuǎn)變?yōu)橛嬎銠C(jī)上某一DBMS支持的數(shù)據(jù)模型,將信息世界轉(zhuǎn)變?yōu)闄C(jī)

器世界。

1.實體的概念

(1)實體(Entity)

客觀存在并可相互區(qū)別的事物稱為實體。

(2)屬性(Attribute)

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

(3)實體集和實體型

屬性值的集合表示一個實體,而屬性的集合表示一種實體的類型,稱為實體型。同類型的

實體的集合,稱為實體集。

(4)聯(lián)系(Relationship)

實體集之間的對應(yīng)關(guān)系稱為聯(lián)系,它反映現(xiàn)實世界事物之間的相互關(guān)聯(lián)。

實體間的聯(lián)系可分為以下三種類型

①一對一聯(lián)系例如,一個學(xué)生只能有一個學(xué)號,而一個學(xué)號只能指向一個

學(xué)生,則學(xué)生與學(xué)號之間具有一對一聯(lián)系。

②一對多聯(lián)系例如,一個班級中有若干名學(xué)生,而每個學(xué)生只在一個班級

中學(xué)習(xí),則班級與學(xué)生之間具有一對多聯(lián)系。

③多對多聯(lián)系例如,一門課程同時有若干個學(xué)生選修,而一個學(xué)生可以同

時選修多門課程,則課程與學(xué)生之間具有多對多聯(lián)系。

3.數(shù)據(jù)模型

數(shù)據(jù)模型是按計算機(jī)系統(tǒng)的觀點對數(shù)據(jù)建模,主要用于DBMS的實現(xiàn),

在實現(xiàn)數(shù)據(jù)庫管理的過程中,數(shù)據(jù)模型起著關(guān)鍵作用。整個數(shù)據(jù)庫技術(shù)的發(fā)展就是沿著數(shù)

據(jù)模型的主線展開的?,F(xiàn)有的數(shù)據(jù)庫都是基于某種數(shù)據(jù)模型的。

常用的數(shù)據(jù)模型有3種:層次模型、網(wǎng)狀模型和關(guān)系模型。

層次模型

層次模型是數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型它用樹形結(jié)構(gòu)表示各實體以及實體間的聯(lián)

系。

若用圖來表示,層次模型是一棵倒立的樹。在數(shù)據(jù)庫中,滿足以下條件的數(shù)據(jù)模型稱為層

次模型:①有且僅有一個結(jié)點無父結(jié)點,這個結(jié)點稱為根結(jié)點;②其他結(jié)點有且僅有

一個父結(jié)點。

-I學(xué)院】

I專業(yè)〃一業(yè)2|一業(yè)3|■業(yè)4

I層次模型示例

網(wǎng)狀模型

在現(xiàn)實世界中,事物之間的聯(lián)系更多的是非層次關(guān)系的,用層次模型表示非樹型結(jié)構(gòu)是很

不直接的,網(wǎng)狀模型則可以克服這一弊病。網(wǎng)狀模型是一個網(wǎng)絡(luò)。在數(shù)據(jù)庫中,滿足以下

兩個條件的數(shù)據(jù)模型稱為網(wǎng)狀模型。①允許一個以上的結(jié)點無父結(jié)點;②一個結(jié)點可

以有多于一個的父結(jié)點。

網(wǎng)狀模型示例“

1.2關(guān)系數(shù)據(jù)庫

1.2.1關(guān)系模型

以二維表的形式表示實體與實體間聯(lián)系的數(shù)據(jù)模型稱為關(guān)系模型。

從模型的三要素角度看,關(guān)系模型的內(nèi)容為:

數(shù)據(jù)結(jié)構(gòu):一張二維表格。

數(shù)據(jù)操作:數(shù)據(jù)表的定義,檢索、維護(hù)、計算等。

數(shù)據(jù)約束條件:表中列的取值范圍即域值的限制條件。

(1)關(guān)系

在關(guān)系模型中,一個關(guān)系就是一張二維表,每個關(guān)系都有一個關(guān)系名。在數(shù)據(jù)庫中,一個

關(guān)系存儲為一個數(shù)據(jù)表。

(2)元組

表中的行稱為元組,每一行是一個元組,對應(yīng)數(shù)據(jù)表中的一個具體記錄,元組的各分量分

別對應(yīng)于關(guān)系的各個屬性。

(3)屬性

表(關(guān)系)中的列稱為屬性,每一列有一個屬性名,對應(yīng)數(shù)據(jù)表中的一個字段。

(4)域

一個屬性的取值范圍是該屬性的域。

(5)關(guān)鍵字

表中的一個屬性(組),它的值可以唯一地標(biāo)識一個元組。如:學(xué)號。

(6)外關(guān)鍵字

如果一個關(guān)系中的屬性或?qū)傩越M并非該關(guān)系的關(guān)鍵字,但它們是另外一個關(guān)系的關(guān)鍵字,

則稱其為該關(guān)系的外關(guān)鍵字。

(7)候選碼

表中的某一個屬性,它的值可以唯一地標(biāo)志一個元組。一個表中可能有多個候選碼,選擇

一個作為主鍵,主鍵的屬性稱為主屬性。

關(guān)系的特點:

(1)關(guān)系必須規(guī)范化。規(guī)范化是指關(guān)系模型中的每一個關(guān)系模式都必須滿足一定的要求。

最基本的要求是每個屬性必須是不可分割的數(shù)據(jù)單元,即表中不能在包含表。

(2)在同一個關(guān)系中不能出現(xiàn)相同的屬性名。

(3)關(guān)系中不允許有完全相同的元組,即冗余。

(4)在一個關(guān)系中元組的次序無關(guān)緊要。

(5)在一個關(guān)系中列的次序無關(guān)緊要。

1.2.2關(guān)系運算

在關(guān)系數(shù)據(jù)庫中,關(guān)系的基本運算有兩類:傳統(tǒng)的集合運算和專門的關(guān)系運算。

一傳統(tǒng)的集合運算

1?并

設(shè)有兩個關(guān)系R和S,它們具有相同的結(jié)構(gòu)。R和S的并是由屬于R或?qū)儆赟的元組組成

的集合,運算符為U。

RSRuS

ABC

alblcl

alb2c2

a2b2cl

alb3c2

2.差

設(shè)有兩個關(guān)系R和S,它們具有相同的結(jié)構(gòu)。R和S的差是由屬于R但不屬于S的元組組

成的集合。運算符為一。

3交

設(shè)有兩個關(guān)系R和S,它們具有相同的結(jié)構(gòu)。R和S的交是由既屬于R又屬于S的元組組

成的集合,運算符為n。

二傳統(tǒng)的集合運算

1.選擇

選擇運算是在關(guān)系中選擇滿足某些條件的元組。也就是說,選擇運算是在二維表中選擇滿

足指定條件的行。

2.投影

投影運算是從關(guān)系模式中指定若干個屬性組成新的關(guān)系。即在關(guān)系中選擇某些屬性列。

3.聯(lián)接

聯(lián)接運算將兩個關(guān)系模式通過公共的屬性名拼接成一個更寬的關(guān)系模式,生成的新關(guān)系中

包含滿足聯(lián)接條件的元組。

1.3數(shù)據(jù)庫設(shè)計基礎(chǔ)

1.3.1數(shù)據(jù)庫設(shè)計的原則

(1)關(guān)系數(shù)據(jù)庫的設(shè)計應(yīng)遵從概念單一化“一事一地”的原則

(2)避免在表之間出現(xiàn)重復(fù)字段

(3)表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素

(4)用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系

1.3.2數(shù)據(jù)庫設(shè)計的步驟

1.需求分析

2.確定所需要的表

3.確定所需字段

4.確定聯(lián)系

5.設(shè)計求精

1.4Access數(shù)據(jù)管理系統(tǒng)概述

1.4.1Access的發(fā)展簡介

Access是一種關(guān)系型的桌面數(shù)據(jù)庫管理系統(tǒng),是MicrosoftOffice套件產(chǎn)品之一。

1992年11月推出Access1.0,Microsoft先后推

出2.0,7.0/95,8.0/97,9.0/2000,10.0/2002,直至UAccess2003和Access2007。本

教程以Access2003版為教學(xué)背景。

Access的特點

1.具有方便實用的強(qiáng)大功能。

2.可以利用各種圖例快速獲取數(shù)據(jù)。

3.可以利用報表設(shè)計工具,方便生成報表。

4.能處理多種數(shù)據(jù)類型。

5.采用OLE技術(shù),能方便創(chuàng)建和編輯多媒體數(shù)據(jù)庫。

6.支持ODBC標(biāo)準(zhǔn)的SQL數(shù)據(jù)庫的數(shù)據(jù)。

7.設(shè)計過程自動化,大大提高了數(shù)據(jù)庫的工作效率。

8.具有較好的集成開發(fā)環(huán)境。

9.提供了斷點設(shè)置、單步執(zhí)行等調(diào)試功能。

10.與Internet/Intranet的集成。

11.可以將數(shù)據(jù)庫應(yīng)用程序的建立移進(jìn)用戶環(huán)境,并最終使用戶和應(yīng)用程序開發(fā)者之間的

關(guān)系淡化。

1.4.2Access的系統(tǒng)結(jié)構(gòu)

Access將數(shù)據(jù)庫定義為一個擴(kuò)展名為.mdb文件,由數(shù)據(jù)庫對象和組兩部分組成。其中對象

分為7種:表、查詢、窗體、報表、數(shù)據(jù)訪問頁、宏、模塊。

表是數(shù)據(jù)庫的核心與基礎(chǔ),存放中數(shù)據(jù)庫中的全部數(shù)據(jù)。報表、查詢和窗體都是從數(shù)據(jù)庫

中獲取數(shù)據(jù)信息,以實現(xiàn)用戶的某一特定的需要。

1、表是實現(xiàn)數(shù)據(jù)庫管理的基礎(chǔ),是關(guān)于特定主題(例如:學(xué)生和課程)數(shù)據(jù)的集合,是數(shù)

據(jù)庫的核心與基礎(chǔ)。表中的列在Access中稱為字段,行在Access中稱為記錄。

2、查詢是用來操作數(shù)據(jù)庫中的記錄對象,利用它可以按照一定的條件或準(zhǔn)則從一個或多個

表中篩選出需要操作的字段,并可以把它們集中起來,形成所謂的動態(tài)數(shù)據(jù)集,并顯示在

一個虛擬的數(shù)據(jù)表窗口中。

3、窗體:數(shù)據(jù)庫與用戶進(jìn)行交互操作的界面。其數(shù)據(jù)源可以是表或查詢。

4、報表可以按照指定的樣式將多個表或查詢中的數(shù)據(jù)顯示(打印)出來。報表中包含了指

定數(shù)據(jù)的詳細(xì)列表。報表也可以進(jìn)行統(tǒng)計計算,如求和、求最大值、求平均值等。報表與

窗體類似,也是通過各種控件來顯示數(shù)據(jù)的,報表的設(shè)計方法也與窗體大致相同。

5、頁是一種特殊的Web頁,用戶可以在此Web頁與Access數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行聯(lián)接,查

看、修改Access數(shù)據(jù)庫中的數(shù)據(jù)。數(shù)據(jù)訪問頁就是Internet網(wǎng)頁,將數(shù)據(jù)庫中的數(shù)據(jù)編輯

成網(wǎng)頁形式,可以發(fā)布到Internet上,提供給Internet上的用戶共享。也就是說,網(wǎng)上用

戶可以通過瀏覽器來查詢和編輯數(shù)據(jù)庫的內(nèi)容。

6、宏是若干個操作的組合,用來簡化一些經(jīng)常性的操作。用戶可以設(shè)計一個宏來控制系統(tǒng)

的操作,當(dāng)執(zhí)行這個宏時,就會按這個宏的定義依次執(zhí)行相應(yīng)的操作。宏可以打開并執(zhí)行

查詢、打開表、打開窗體、打印、顯示報表、修改數(shù)據(jù)及統(tǒng)計信息、修改記錄、修改表中

的數(shù)據(jù)、插入記錄、刪除記錄、關(guān)閉表等操作。

7、模塊是用VBA語言編寫的程序段,它以VisualBasic為內(nèi)置的數(shù)據(jù)庫程序語言。對于數(shù)

據(jù)庫的一些較為復(fù)雜或高級的應(yīng)用功能,需要使用VBA代碼編程實現(xiàn)。通過在數(shù)據(jù)庫中添

加VBA代碼,可以創(chuàng)建出自定義菜單、工具欄和具有其他功能的數(shù)據(jù)庫應(yīng)用系統(tǒng)。

1.4.3Access的操作窗口

1.啟動Access

與其他Windows應(yīng)用程序一樣,啟動Access可以通過單擊“開始”菜單,然后在“程序”菜單

中選擇圖標(biāo),即可打開Access。

2、關(guān)閉Access的4種方法:

(1)單擊Access右上角的“關(guān)閉”按鈕

(2)選擇“文件”菜單中的“退出”命令

(3)使用Alt+F4快捷鍵

(4)使用Alt+F+X快捷鍵

第2章數(shù)據(jù)庫和表

2.1數(shù)據(jù)庫的創(chuàng)建

創(chuàng)建數(shù)據(jù)庫方法有兩種,一是先建立一個空數(shù)據(jù)庫,然后向其中添加表、查詢、窗體和報

表等對象,這是創(chuàng)建數(shù)據(jù)庫最靈活的方法;二是使用“數(shù)據(jù)庫向?qū)А保孟到y(tǒng)提供的模板

進(jìn)行一次操作來選擇數(shù)據(jù)庫類型,并創(chuàng)建所需的表、窗體和報表,這是操作最簡單的方法。

2.1.1創(chuàng)建空數(shù)據(jù)庫

例2-1建立“教學(xué)管理”空數(shù)據(jù)庫,并將建好的數(shù)據(jù)庫保存在C盤Access文件夾中。

注意:數(shù)據(jù)庫創(chuàng)建好后,數(shù)據(jù)庫容器中還不存在任何其他數(shù)據(jù)庫對象,此時可以根據(jù)

需要在該數(shù)據(jù)庫容器中創(chuàng)建數(shù)據(jù)庫對象。另外,在創(chuàng)建數(shù)據(jù)庫之前,最好先建立用于保存

該數(shù)據(jù)庫文件的文件夾,以便今后的管理。

2.1.2使用向?qū)?chuàng)建數(shù)據(jù)庫

例2-2在C盤“教學(xué)管理”文件夾下創(chuàng)建“教學(xué)管理”數(shù)據(jù)庫。

利用“數(shù)據(jù)庫向?qū)А眲?chuàng)建數(shù)據(jù)庫對象,在所建的數(shù)據(jù)庫對象容器中包含了表、查詢、窗

體、報表、宏和模塊等Access對象。但是,由于“數(shù)據(jù)庫向?qū)А眲?chuàng)建的表可能與需要的表不

完全相同,表中包含的字段可能與需要的字段不完全一樣。因此通常使用“數(shù)據(jù)庫向?qū)А眲?chuàng)

建數(shù)據(jù)庫后,還需要對其進(jìn)行補(bǔ)充和修改。

2.1.3打開數(shù)據(jù)庫

1.通過“開始工作”任務(wù)窗格打開

2.使用“打開”命令打開

例2-3打開C盤“教學(xué)管理”文件夾中“教學(xué)管理”數(shù)據(jù)庫。

2.1.4關(guān)閉數(shù)據(jù)庫

關(guān)閉數(shù)據(jù)庫的方法有3種。

(1)單擊“數(shù)據(jù)庫''窗口右上角“關(guān)閉”按鈕

(2)雙擊“數(shù)據(jù)庫”窗口左上角“控制”菜單圖標(biāo)

(3)單擊“數(shù)據(jù)庫”窗口左上角“控制”菜單圖標(biāo),從彈出快捷菜單中選擇“關(guān)閉”命令

2.2建立表

2.2.1表的組成

表是Access數(shù)據(jù)庫中最基本的對象,是具有結(jié)構(gòu)的某個相同主題的數(shù)據(jù)集合。

表由兩部分構(gòu)成:表結(jié)構(gòu)和表內(nèi)容。

1.字段名稱

每個字段應(yīng)具有唯一的名字,稱為字段名稱。

字段名稱的命名規(guī)則為:

(1)長度為1?64個字符。

(2)可以包含字母、漢字、數(shù)字、空格和其他字符,但不能以空格開頭。

(3)不能包含句號(.)、驚嘆號(!)、方括號([])和重音符號(0?

(4)不能使用ASCII為0?32的ASCII字符。

2.數(shù)據(jù)類型

數(shù)據(jù)類型表,

用途「1

文本2字母、漢字和數(shù)字。如:學(xué)號、姓名、性別、民族〃0~255個字符,

備注,字母、漢字和數(shù)字(和文本型數(shù)據(jù)相似,但容量更大)0-64000個

數(shù)字J數(shù)值。一般參與菖術(shù)計篁。如:入學(xué)成績1、2、4,或8字節(jié)

日期時間,日期時間,如出生日映8字節(jié)。

貨幣-數(shù)值「8字節(jié)2

自動編號。每次添加新記錄時Access2003自動添加的連續(xù)數(shù)字「4字節(jié)"

是對是用、真/假或開/關(guān)一1位(1點字

OLE對象~可與VisualBasic交互作用的OLE對象(捱接或嵌入對可達(dá)1GBB?

象工如:照片e

超捱接一Web地址、Intemet地址或鏈接到其他數(shù)據(jù)庫或應(yīng)用程序可達(dá)65536字符?

查閱向?qū)碜云渌砘蛘吡斜淼闹?通常為4字節(jié)”

注意:“數(shù)字”、“日期/時間“、“貨幣”以及“是/否”,這些數(shù)據(jù)類型提供預(yù)先定義好的顯

示格式??梢詮拿恳粋€數(shù)據(jù)類型可用的格式中選擇所需的格式來設(shè)置“格式”屬性。也可以

為所有的數(shù)據(jù)類型創(chuàng)建自定義顯示格式,但“OLE對象”數(shù)據(jù)類型除外。

2.2.2建立表結(jié)構(gòu)

1.使用“數(shù)據(jù)表''視圖

“數(shù)據(jù)表”視圖是按行和列顯示表中數(shù)據(jù)的視圖。在數(shù)據(jù)表視圖中,可以進(jìn)行字段的編輯、

添加、刪除和數(shù)據(jù)的查找等各種操作。

2.使用設(shè)計視圖

表設(shè)計視圖是創(chuàng)建表結(jié)構(gòu)以及修改表結(jié)構(gòu)最方便、最有效的窗口。

3.使用表向?qū)?/p>

表設(shè)計視圖是創(chuàng)建表結(jié)構(gòu)以及修改表結(jié)構(gòu)最方便、最有效的窗口。

4.定義主鍵

定義主鍵的方法有兩種,一是在建立表結(jié)構(gòu)過程中定義主鍵;二是在建立表結(jié)構(gòu)后,重新

打開設(shè)計視圖定義主鍵。

主鍵也稱為主關(guān)鍵字,是表中能夠唯一標(biāo)識記錄的一個字段或多個字段的組合。

主鍵有三種,即自動編號、單字段和多字段。

自動編號主鍵的特點是,當(dāng)向表中增加一個新記錄時,主鍵字段值會自動加1,如果在保存

新建表之前未設(shè)置主鍵,則Access會詢問是否要創(chuàng)建主鍵,如果回答“是“,Access將創(chuàng)建

自動編號類型的主鍵。

單字段主鍵是以某一個字段作為主鍵,來唯一標(biāo)識記錄,這類主鍵的值可由用戶自行定義。

多字段主鍵是由兩個或更多字段組合在一起來唯一標(biāo)識表中記錄。

2.2.3設(shè)置字段屬性

字段屬性表示字段所具有的特性,它定義了字段數(shù)據(jù)的保存、處理或顯示。

1.字段大小

□字段大小屬性用于限制輸入到該字段的最大長度,當(dāng)輸入的數(shù)據(jù)超過該字段設(shè)置的

字段大小時,系統(tǒng)將拒絕接收。

□字段大小屬性只適用于文本、數(shù)字或自動編號類型的字段。

□在設(shè)計視圖的字段屬性框的字段大小屬性中選擇字段大小的類型(數(shù)字)或輸入字

段大小的字符個數(shù)(文本)。

□如果文本字段中已經(jīng)有數(shù)據(jù),那么減小字段大小會造成數(shù)據(jù)丟失,Access將截去超

出新限制的字符。

□如果在數(shù)字字段中包含小數(shù),那么將字段大小屬性設(shè)置為整數(shù)時,Access自動將小

數(shù)取整。

□如果文本型字段的值是漢字,那么每個漢字占一位。

2.格式

□格式屬性影響數(shù)據(jù)的顯示格式。

□可確定數(shù)字、貨幣、日期等字段格式。

□在設(shè)計視圖的字段屬性框的字段格式屬性中選擇字段格式的類型。

3.輸入掩碼

□用于指定數(shù)據(jù)的輸入格式。

□可定義文本、數(shù)字、日期/時間、貨幣等數(shù)據(jù)類型的字段。

□如果為某字段定義了輸入掩碼,同時又設(shè)置了它的格式屬性,格式屬性將在數(shù)據(jù)顯

示時優(yōu)先于輸入掩碼的設(shè)置。

□只為文本型和日期/時間型字段提供向?qū)А?/p>

□可使用字符定義輸入掩碼屬性。

□輸入掩碼屬性由字面字符(如空格、點、括號等)和決定輸入數(shù)值的類型的特殊字

符組成。

鈿婀

0數(shù)字(0到9,必選項;不允許使用加號[+]和減號[-])

9數(shù)字或空格(非必選項;不允許使用加號和減號

#數(shù)字或空格(非必選項;空白將轉(zhuǎn)換為空格,允許使用加號和減號)

L字母(A到乙必選項)

?字母(A到Z,可選項)

A字母或數(shù)字(必選項)

a字母或數(shù)字(可選項)

&任一字符或空格(必選項)

C任一字符或空格(可選項)

十進(jìn)制占位符和千位、日期和時間分隔符(實際使用的字符取決于

?9:;—/

Windows“控制面板”的“區(qū)域設(shè)置”中指定的區(qū)域設(shè)置)

(使其后所有的字符轉(zhuǎn)換為小寫

)使其后所有的字符轉(zhuǎn)換為大寫

輸入掩碼從右到左顯示,輸入至掩碼的字符一般都是從左到右的.

1

可以在輸入掩碼的任意位置包含吹號

使其后的字符顯示為原義字符.可用于將該表中的任何字符顯示為

\

原義字符(例如,3顯示為A)

將“輸入掩碼”屬性設(shè)置為“密碼”,以創(chuàng)建密碼輸入項文本框。

密碼

文本框中健入的任何字符都按原字符保存,但顯示為星號(*)

4.默認(rèn)值

□設(shè)置默認(rèn)值可以減少數(shù)據(jù)輸入量。

□在設(shè)計視圖的字段屬性框的默認(rèn)值屬性中輸入默認(rèn)的的值。

□設(shè)置默認(rèn)值屬性時,必須與字段中所設(shè)的數(shù)據(jù)類型相匹配,否則會出現(xiàn)錯誤。

5.有效性規(guī)則

□為防止數(shù)據(jù)的輸入錯誤而設(shè)置。

□有效性規(guī)則允許定義一條規(guī)則,限制可以接受的內(nèi)容。

□有效性規(guī)則的實質(zhì)是一個限制條件,完成對數(shù)據(jù)輸入的檢測。

□在設(shè)計視圖的字段屬性框的有效性規(guī)則屬性中該字段的有效性規(guī)則。

6.有效性文本

□當(dāng)輸入的數(shù)據(jù)違反了有效性規(guī)則時,顯示的文本信息。

□通常與有效性文本同時定義。

7.索引

□索引能根據(jù)鍵值加速在表中查找和排序的速度,并且能對表中的記錄實施唯一性。

□在Access中,可以創(chuàng)建基于單個字段的索引,也可以創(chuàng)建基于多個字段的索引。

2.2.4建立表之間的關(guān)系

1.定義關(guān)系的條件

□表間關(guān)系分為一對一、一對多和多對多三種。

□建立表間關(guān)系的條件:

(1)如果僅有一個相關(guān)字段是主鍵或具有唯一索引,則創(chuàng)建一對多關(guān)系。

(2)如果兩個相關(guān)字段都是主鍵或唯一索引,則創(chuàng)建一對一關(guān)系。

(3)多對多關(guān)系實際上是某兩個表與第三個表的兩個一對多關(guān)系,第三個表的主鍵包含兩

個字段,分別是前兩個表的外鍵。

2.參照完整性

□指數(shù)據(jù)的正確性、準(zhǔn)確性和有效性。參照完整性是在輸入或刪除記錄時,為維持表

之間已定義的關(guān)系而必須遵循的規(guī)則。

□如果實施了參照完整性,那么當(dāng)主表中沒有相關(guān)記錄時,就不能將記錄添加到相關(guān)

表中,也不能在相關(guān)表中存在匹配的記錄時刪除主表中的記錄,更不能在相關(guān)表中

有相關(guān)記錄時,更改主表中的主鍵值。

3.建立表之間的關(guān)系

建立表間關(guān)系的方法包括:使用向?qū)?chuàng)建數(shù)據(jù)庫同時創(chuàng)建表間關(guān)系;使用“關(guān)系”命令定義

表間關(guān)系。

4.子數(shù)據(jù)表

□子數(shù)據(jù)表是指在一個數(shù)據(jù)表視圖中顯示已與其建立關(guān)系的數(shù)據(jù)表視圖。

□在建有關(guān)系的主數(shù)據(jù)表視圖上,每條記錄左端都有一個關(guān)聯(lián)標(biāo)記“口”。在未顯示子

數(shù)據(jù)表時,關(guān)聯(lián)標(biāo)記內(nèi)為一個“+”號,此時單擊某記錄的關(guān)聯(lián)標(biāo)記,即可顯示該記

錄對應(yīng)的子數(shù)據(jù)表記錄數(shù)據(jù),而該記錄左端的關(guān)聯(lián)標(biāo)記內(nèi)變?yōu)橐粋€“-”號。若需展

開所有記錄的子數(shù)據(jù)表,可選擇“格式”一“子數(shù)據(jù)表”-“全部展開”命令;若需折疊

展開的子數(shù)據(jù)表,可選擇“格式”一“子數(shù)據(jù)表”一“全部折疊”命令。

3.2.5向表中輸入數(shù)據(jù)

1.以數(shù)據(jù)表視圖方式輸入數(shù)據(jù)

2.創(chuàng)建查閱列表字段

3.獲取外部數(shù)據(jù)

(1)導(dǎo)入數(shù)據(jù)

導(dǎo)入數(shù)據(jù)是將其它系統(tǒng)的數(shù)據(jù)庫數(shù)據(jù)導(dǎo)入到Access數(shù)據(jù)庫中。

一般使用導(dǎo)入命令將外部數(shù)據(jù)導(dǎo)入至當(dāng)前數(shù)據(jù)庫中。

(2)鏈接數(shù)據(jù)

鏈接數(shù)據(jù)是指在自己的數(shù)據(jù)庫中形成一個鏈接表對象,每次在Access數(shù)據(jù)庫中操作數(shù)據(jù)時,

都是即時從外部數(shù)據(jù)源獲取數(shù)據(jù)。

2.3維護(hù)表

為使數(shù)據(jù)庫中表結(jié)構(gòu)更合理,內(nèi)容使用更有效,需要對表進(jìn)行維護(hù)。

2.3.1打開/關(guān)閉表

1.打開表

□使用打開命令(改內(nèi)容)

□使用設(shè)計命令(改結(jié)構(gòu))

2.關(guān)閉表

2.3.2修改表結(jié)構(gòu)

1.添加字段

2.修改字段

3.刪除字段

4.重新設(shè)置主鍵

2.3.3編輯表內(nèi)容

1定位記錄

數(shù)據(jù)表中有了數(shù)據(jù)后,修改是經(jīng)常要做的操作,其中定位和選擇記錄是首要的任務(wù)。

常用的記錄定位方法有兩種:一是用記錄號定位,二是用快捷鍵定位。快捷鍵及其定位功

能見下表。

2選擇記錄

選擇記錄是指選擇用戶所需要的記錄。用戶可以在“數(shù)據(jù)表”視圖下使用鼠標(biāo)或鍵盤兩

種方法選擇數(shù)據(jù)范圍。

3.編輯表內(nèi)容

(1)添加記錄在已經(jīng)建立的表中,添加新的記錄。

(2)刪除記錄刪除表中出現(xiàn)的不需要的記錄。

(3)修改數(shù)據(jù)在已建立的表中,修改出現(xiàn)錯誤的數(shù)據(jù)。

(6)復(fù)制數(shù)據(jù)在輸入或編輯數(shù)據(jù)時,有些數(shù)據(jù)可能相同或相似,這時可以使用復(fù)制和粘

貼操作將某些字段中的部分或全部數(shù)據(jù)復(fù)制到另一個字段中。

2.3.4調(diào)整表外觀

調(diào)整表的結(jié)構(gòu)和外觀是為了使表看上去更清楚、美觀。調(diào)整表外觀的操作包括:改變字段

次序、調(diào)整字段顯示寬度和高度、隱藏列和顯示列、凍結(jié)列、設(shè)置數(shù)據(jù)表格式、改變字體

顯示等。

2.4操作表

2.4.1查找數(shù)據(jù)

查找指定內(nèi)容

在“數(shù)據(jù)表”視圖中,使用編輯菜單中的查找命令

查找空值或空字符串

空值是字段中還沒有值,可用Null值代替

空字符串是用雙引號括起來的空字符串,即中間沒有空格,長度為0

用法

與任何個數(shù)的字符匹配,它可以在字符wh*可以找到what、white和

*串中,why

當(dāng)做第一個或最后一個字符使用

?與任何單字母的字符匹配B?11可以找到balkbell和bill

與方括號內(nèi)任何單個字符匹配B[ae]ll可以找到ball和bell,

[]

但找不到bill

1匹配任何不在括號之內(nèi)的字符B[!ae]ll可以找到bill和bull,

但找不到bell

與范圍內(nèi)的任何一個字符匹配.必'須以B[a-c]d可以找到badsbbd和

遞噌排bed

-

序次序來指定區(qū)域(A到Z,而不是Z

至!1A)

#與任何單個數(shù)字字符匹配1#3可以找到103、113s123

2.4.2替換數(shù)據(jù)

在“數(shù)據(jù)表”視圖中,使用編輯菜單中的替換命令。

1、替換指定內(nèi)容

2、更改默認(rèn)設(shè)置

2.4.3排序記錄

排序記錄時,不同的字段類型,排序規(guī)則有所不同,具體規(guī)則如下:

(1)英文按字母順序排序,大小寫視為相同,升序時按A到z排列,降序時按z到A

排列。

(2)中文按拼音的順序排序,升序時按A到z排列,降序時按z到A排列。

(3)數(shù)字按數(shù)字的大小排序,升序時從小到大排列,降序按從大到小排列。

(4)使用升序排序日期和時間,是指由較前的時間到較后的時間;使用降序排序時,則

是指由較后的時間到較前的時間。

排序時,要注意的事項如下:

(1)在“文本”字段中保存的數(shù)字將作為字符串而不是數(shù)值來排序。因此,如果要以數(shù)值

的順序來排序,必須在較短的數(shù)字前面加上零,使得全部文本字符串具有相同的長度。例

如:要以升一序來排序以下的文本字符串“1”、“2”、“11”和“22”,其結(jié)果將是“1”、“11”、“2”、

“22”。必須在儀有一位數(shù)的字符串前面加上零,才能正確地排序:“01”、“02”、“11”、“22”。

對于不包含Null值的字段,另一個解決方案是使用Vai函數(shù)來排序字符串的數(shù)值。例如:

如果“年齡”列是包含數(shù)值的“文本”字段,在“字段”單元格指定Vai([年齡]),祖在“排序”

單元格指定排序次序后,才會以正確的順序來放置記錄。如果只在“文本”字段之中保存數(shù)

字或日期,可以考慮將表的數(shù)據(jù)類型更改為數(shù)字、貨幣或日期/時間。這樣在對此字段排

序時,數(shù)字或日期將會以數(shù)值或日期的順序來排序,而不需要加入前面的零。

(2)在以升序來排序字段時,任何含有空字段(包含Null值)的記錄將列在列表中的

第一條。如果字段中同時包含Null值和空字符串,包含Null值的字段將在第一條顯示,緊

接著是空字符串。

2.4.4篩選記錄

1.按選定內(nèi)容篩選

□篩選符合單值的記錄

2.按窗體篩選

□篩選符合兩個以上值的記錄

3.按篩選目標(biāo)篩選

□篩選符合某條件的記錄

4.高級篩選

□篩選滿足復(fù)雜條件的記錄

第3章查詢

3.1查詢概述

查詢是Access數(shù)據(jù)庫中的一個重要對象,是使用者按照一定條件從Access數(shù)據(jù)庫表或已建

立的查詢中檢索需要數(shù)據(jù)的最主要方法。

3.1.1查詢的功能

1.選擇字段在查詢中,選擇表中的部分字段。

2.選擇記錄根據(jù)指定的條件查找所需的記錄,并顯示找到的記

3.選擇記錄利用查詢添加、修改和刪除表中記錄。

4.實現(xiàn)計算在建立查詢時進(jìn)行各種統(tǒng)計計算。

5.建立新表利用查詢得到的結(jié)果建立新表。

6.為窗體、報表或數(shù)據(jù)訪問頁提供數(shù)據(jù)

查詢對象不是數(shù)據(jù)的集合,而是操作的集合。查詢的運行結(jié)果是一個數(shù)據(jù)集合,也稱為動

態(tài)集。它很像一張表,但并沒有被存儲在數(shù)據(jù)庫中。創(chuàng)建查詢后,保存的只是查詢的操作,

只有在運行查詢時,Access才會從查詢數(shù)據(jù)源表的數(shù)據(jù)中抽取出來并創(chuàng)建它;只要關(guān)閉查

詢,查詢的動態(tài)集就會自動消失。

3.1.2查詢的類型

在Access中,查詢分為5種,分別是選擇查詢、交叉表查詢、參數(shù)查詢、操作查詢和SQL

查詢。5種查詢的應(yīng)用目標(biāo)不同,對數(shù)據(jù)源的操作方式和操作結(jié)果也不同。

1.選擇查詢

□選擇查詢是最常用的查詢類型。顧名思義,它是根據(jù)指定條件,從一個或多個數(shù)據(jù)

源中獲取數(shù)據(jù)并顯示結(jié)果。也對記錄進(jìn)行分組,并且對分組的記錄進(jìn)行總計、計數(shù)、

平均以及其他類型的計算。

□例如,查找1992年參加工作的男教師,統(tǒng)計各類職稱的教師人數(shù)等。

2.交叉表查詢

□交叉表查詢將來源于某個表或查詢中的字段進(jìn)行分組,一組列在數(shù)據(jù)表左側(cè),一組

列在數(shù)據(jù)表上部,然后在數(shù)據(jù)表行與列的交叉處顯示數(shù)據(jù)源中某個字段統(tǒng)計值。

□例如,統(tǒng)計每個系男女教師的人數(shù),要求行標(biāo)題顯示系名,列標(biāo)題顯示性別,表的

交叉處顯示統(tǒng)計的人數(shù)。

3.參數(shù)查詢

□參數(shù)查詢是一種根據(jù)使用者輸入的條件或參數(shù)來檢索記錄的查詢。

□例如,可以設(shè)計一個參數(shù)查詢,提示輸入兩個成績值,然后Access檢索在這兩個值

之間的所有記錄。

4.操作查詢

□操作查詢與選擇查詢相似,都需要指定查找記錄的條件,但選擇查詢是檢查符合特

定條件的一組記錄,而操作查詢是在一次查詢操作中對所得結(jié)果進(jìn)行編輯等操作。

□操作查詢有4種:生成表、刪除、更新和追加。

5.SQL查詢

□SQL查詢是使用SQL語句來創(chuàng)建的一種查詢。

□SQL查詢有4種:包括聯(lián)合查詢、傳遞查詢、數(shù)據(jù)定義查詢和子查詢等。

聯(lián)合杳詢是將一個或多個表、一個或多個查詢的字段組合為查詢結(jié)吳巾的一個字段,執(zhí)行

聯(lián)合查詢時,將返回所包含的表或查詢中的對應(yīng)字段記錄;

傳遞查詢是直接將命令發(fā)送到ODBC數(shù)據(jù)庫,它使用服務(wù)器能接受的命令,利用它可以檢

索或更改記錄;

數(shù)據(jù)定義查詢可以創(chuàng)建、刪除或更改表,或在當(dāng)前的數(shù)據(jù)庫中創(chuàng)建索引;

子查詢是包含另一個選擇或操作查詢中的SQLSELECT語句,可以在查詢設(shè)計網(wǎng)格的“字

段''行輸入這些語句來定義新字段,或在“準(zhǔn)則”行來定義字段的準(zhǔn)則。

3.1.3查詢的條件

1.運算符

運算符是構(gòu)成查詢條件的基本元素。Access提供了關(guān)系運算符,邏輯運算符和特殊運

算符3種。

關(guān)系運尊符

=等于

不等于

V

小于等于

>大于

大于等于

邏輯運算符蹣

Not?學(xué)由t旋接的表達(dá)型1真時,整個表達(dá)式為假

當(dāng)連接的豆正式能是真的「嚼繡達(dá)或為。節(jié)則為假

AndAnd

Or當(dāng)Or連接的表達(dá)式有一個為真時,整個表達(dá)式為真,否則為假

特殊運算

用于指定一個字段值的列表,列表中的任意一個值都可與查詢的

In

字段相匹配

Bewe'gi那號艇二1三段值的范圍,指定的范圍之間用And連接

用于指定直藏本?字儂用褥模式?在所軍義的字符模式中,用

“?”表示該位苴可匹配任何一個字而用a圖韁可匹

Like

配零或多個字符;用“仍表示該位置可匹配一個數(shù)字;用方括號

描述一個范圍,用于表示可匹配的字符范圍

IsNuU用于指定一個字段為空

IsNotNull用于指定一個字段為非空

2.函數(shù)(簡單介紹幾個)

Access提供了大量的標(biāo)準(zhǔn)函數(shù),如數(shù)值函數(shù)、字符函數(shù)、日期時間函數(shù)和統(tǒng)計函數(shù)等。(詳

見附錄)

球硼

Ab>溺數(shù)值表達(dá)式值的絕對值

Int返回數(shù)值表達(dá)表值的整翎歌

Srq返回數(shù)值表達(dá)式值的平方根

Sgn返回數(shù)值表達(dá)式的符號值

3.使用數(shù)值作為查詢條件

4.使用文本值作為查詢條件

5.使用計算或處理日期結(jié)果作為查詢條件

6.使用字段的部分值作為查詢條件

7.使用空值或空字符串作為查詢條件

注意:

□在條件中字段名必須用方括號括起來。

□數(shù)據(jù)類型必須與對應(yīng)字段定義的類型相符合。

3.2創(chuàng)建選擇查詢

根據(jù)指定條件,從一個或多個數(shù)據(jù)源中獲取數(shù)據(jù)的查詢稱為選擇查詢。創(chuàng)建創(chuàng)建選擇查詢

的方法有兩種:查詢向?qū)Ш驮O(shè)計視圖。

3.2.1使用查詢向?qū)?/p>

使用查詢向?qū)?chuàng)建查詢,操作者可以在向?qū)е甘鞠逻x擇一個或多個表、一個或多個字段,

但不能設(shè)置查詢條件。

例3-1查找“教師”表中的記錄,并顯示“姓名”、“性別”、“工作時間”和“系別”4個

字段。

注意:

1、在數(shù)據(jù)表視圖顯示查詢結(jié)果時,字段的排列順序與在“簡單查詢向?qū)А睂υ捒蛑羞x定字

段的順序相同。故在選定字段時,應(yīng)考慮按照字段的顯示順序選取。

2、當(dāng)所建查詢的數(shù)據(jù)源來自于多個表時,應(yīng)建立表之間的關(guān)系。

3.2.2使用“設(shè)計”視圖

1.查詢“設(shè)計”視圖

□在Access中,查詢有5種視圖:設(shè)計視圖、數(shù)據(jù)表視圖、SQL視圖、數(shù)據(jù)

透視表視圖和數(shù)據(jù)透視圖視圖。

□在設(shè)計視圖中,既可以創(chuàng)建不帶條件的查詢,也可以創(chuàng)建帶條件的查詢,還

可以對已建查詢進(jìn)行修改。

3.2.3在查詢中進(jìn)行計算

1查詢中的計算功能

在Access查詢中,可以執(zhí)行兩種類型的計算,預(yù)定義計算和自定義計算。

(1)預(yù)定義計算即“總計”計算,是系統(tǒng)提供的用于對查詢中的記錄組或全部記錄進(jìn)行的計

算,它包括總計、平均值、計數(shù)、最大值、最小值、標(biāo)準(zhǔn)偏差或方差等。

(2)自定義計算使用一個或多個字段的值進(jìn)行數(shù)值、日期和文本計算。對于自定義計算,

必須直接在“設(shè)計網(wǎng)格”中創(chuàng)建新的計算字段,創(chuàng)建方法是將表達(dá)式輸入到“設(shè)計網(wǎng)格”中的

空字段單元格,表達(dá)式可以由多個計算組成。

2總計查詢

總計查詢是在成組的記錄中完成一定計算的查詢。使用查詢設(shè)計視圖中的“總計”行,可以

對查詢中全部記錄或記錄組計算一個或多個字段的統(tǒng)計值。

例4-7統(tǒng)計1992年參加工作的教師人數(shù)。

3分組總計查詢

將記錄進(jìn)行分組,對每個組的值進(jìn)行統(tǒng)計。分組統(tǒng)計時,應(yīng)在該字段的“總計”行上選擇“分

例4-8計算各類職稱的教師人數(shù)。

4添加計算字段

添加的新字段值是根據(jù)一個或多個表中的一個或多個字段并使用表達(dá)式計算得到,也稱為

計算字段。

例4-10查找平均分低于所在班平均分的學(xué)生并顯示其班級號、姓名和平均成績。假設(shè),

班級號為“學(xué)生編號”中的前8位。

3.3交叉表查詢

1.認(rèn)識交叉表查詢

(1)所謂交叉表查詢,就是將來源于某個表中的字段進(jìn)行分組,一組列在數(shù)據(jù)表的左側(cè),

一組列在數(shù)據(jù)表的上部,然后在數(shù)據(jù)表行與列的交叉處顯示表中某個字段的各種計算值

(2)與Excel中的數(shù)據(jù)透視表一樣

2.使用“交叉表查詢向?qū)А?/p>

例3-11創(chuàng)建一個交叉表查詢,統(tǒng)計每班男女生人數(shù)。

注意:

使用向?qū)?chuàng)建交叉表的數(shù)據(jù)源必須來自于一個表或一個查詢。如果數(shù)據(jù)源來自多個表,

可以先建立一個查詢,然后以此查詢作為數(shù)據(jù)源。

3.使用“設(shè)計”視圖

例3-12創(chuàng)建交叉表查詢,使其統(tǒng)計各班男生平均成績和女生平均成績。

當(dāng)所建“交叉表查詢”數(shù)據(jù)來源于多個表或查詢時,使用設(shè)計視圖。當(dāng)所用數(shù)據(jù)源來自

于一個表或查詢,使用“交叉表查詢向?qū)А薄H绻靶袠?biāo)題”或“列標(biāo)題”需要通過建立新字段

得到,使用設(shè)計視圖。

3.4參數(shù)查詢

參數(shù)查詢利用對話框,提示輸入?yún)?shù),并檢索符合所輸參數(shù)的記錄??梢詣?chuàng)建一個參數(shù)提

示的單參數(shù)查詢,也可以創(chuàng)建多個參數(shù)提示的多參數(shù)查詢。

1.單參數(shù)查詢

創(chuàng)建單參數(shù)查詢,即指定一個參數(shù)。在執(zhí)行單參數(shù)查詢時,輸入一個參數(shù)值。

例3-13按學(xué)生姓名查找某學(xué)生的成績,并顯示“學(xué)生編號”、“姓名”、“課程名稱”及“成績”

等。

2.多參數(shù)查詢

創(chuàng)建多參數(shù)查詢,即指定多個參數(shù)。在執(zhí)行多參數(shù)查詢時,需要依次輸入多個參數(shù)值。

例3-14建立一個查詢,使其顯示某班某門課的學(xué)生“姓名”和“成績”。

3.5操作查詢

操作查詢是指僅在一個操作中更改許多記錄的查詢。例如在一個操作中刪除一組記錄,

更新一組記錄等。

操作查詢包括生成表查詢、刪除查詢、更新查詢、追加查詢等。

1.生成表查詢

生成表查詢是利用一個或多個表中的全部或部分?jǐn)?shù)據(jù)創(chuàng)建新表。

2.刪除查詢

從一個或多個表中刪除指定的數(shù)據(jù)。

3.更新查詢

對一個或多個表中的記錄進(jìn)行更新。

4.追加查詢

從一個或多個表中將一組記錄追加到另一個或多個表中。

注意:無論哪一種操作查詢,都可以在一個操作中更改許多記錄,并且在執(zhí)行操作查詢后,

不能撤消剛剛做過的更改操作。因此在執(zhí)行操作查詢之前,最好單擊工具欄上的“視圖”按

鈕,預(yù)覽即將更改的記錄。另外,在使用操作查詢之前,應(yīng)該備份數(shù)據(jù)。

3.6創(chuàng)建SQL查詢

3.6.1查詢與SQL視圖

□在Access中,一個查詢都對應(yīng)著一個SQL語句,查詢對象的實質(zhì)是一條

SQL語句。

□當(dāng)使用設(shè)計視圖建立一個查詢時,Access在后臺就會構(gòu)造一個等價的SQL

語句。

3.6.2SQL語言簡介

SQL(StructuredQueryLanguage,結(jié)構(gòu)化查詢語言)是數(shù)據(jù)庫領(lǐng)域中應(yīng)用最為廣泛的數(shù)據(jù)庫

查詢語言。

SQL的特點:

□SQL是一種一體化語言,包括數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)操縱和數(shù)據(jù)控制

等方面的功能,可以完成數(shù)據(jù)庫活動中的全部工作。

□SQL是一種高度非過程化語言,只需描述“做什么”,不需說明“怎么做”。

□SQL是一種非常簡單的語言,所用語句很接近于SQL是一個共享語言,全

面支持客戶機(jī)/服務(wù)器結(jié)構(gòu)。

2.SQL語句

SQL語句的功能包括:查詢、操縱、定義和控制。

SQL功能動詞SQL功能動詞

數(shù)據(jù)定義CREATE,DROP,ALTER數(shù)據(jù)查詢SELECT

數(shù)據(jù)操作INSTER,UPDATE,DELETE數(shù)據(jù)控制CRANT,REVOTE

1.CREATE語句

格式:CREATETABLE<表名〉

(<字段名1>〈數(shù)據(jù)類型>[列完整性約束條件],

[<字段名2>〈數(shù)據(jù)類型〉[列完整性約束條件]]……)

例3.19建立一個“雇員”表,包括雇員號、姓名、性別、出生日期、部門,備注字段。

CREATETABLE雇員

(雇員號CHAR(8)SMALLESTPrimaryKey,

姓名CHAR(4)NotNull,性別CHAR(l),

出生日期DATE,部門CHAR(20)),備注MEMO;

2.ALTER語句

格式:ALTERTABLE〈表名〉

[ADD〈新字段名〉〈數(shù)據(jù)類型〉[字段級完整性約束條件]]

[DROP[v字段名>]……]

[ALTER〈字段名〉<數(shù)據(jù)類型>]

其中,〈表名〉是指需要修改的表的名字,ADD子句用于增加新字段和該字段的完整性約

束條件,DROP子句用于刪除指定的字段,ALTER子句用于修改原有字段屬性。

例3.20在“雇員”表中增加一個字段,字段名為“職務(wù)”,數(shù)據(jù)類型為“文本”;將“備注”字

段刪除;將"雇員號''字段的數(shù)據(jù)類型改為文本型,字段大小為8。

(1)添加新字段的SQL語句為:

ALTERTABLE雇員ADD職務(wù)CHAR(10);

(2)刪除“備注”字段的SQL語句為:

ALTERTABLE雇員DROP備注;

(3)修改“雇員號”字段屬性的SQL語句為:

ALTERTABLE雇員ALTER雇員號CHAR(8);

3.DROP語句

格式:DROPTABLE<表名〉

例3.21刪除已建立的“雇員”表

DROPTABLE雇員;

4.INSERT語句

格式:

INSERT

INTO〈表名>[(〈屬性名1>[,<屬性名2>...])]

VALUES(〈常量1>)[,<常量2>]...);

例3.22將一條新記錄插入到“雇員”表中

u,,5

INSERTINTO雇員VALUES(0001,“張磊”,“男”,#1960-1-1#,“辦公室,);

例3.23將一條新記錄插入到“雇員”表中,其中“雇員號”為“0002”,“姓名”為“王宏”,“性

別”為“男”

INSERTINTO雇員(雇員號,姓名,性別)VALUES(“0002”,“王宏”,“男”);

注意:文本數(shù)據(jù)應(yīng)用雙引號括起來。日期數(shù)據(jù)應(yīng)用個”號括起來。

5.UPDATE語句

格式:

UPDATE〈表名〉

SET<歹!J名>=<表達(dá)式>[<列名>=<表達(dá)式…

[WHERE(條件>];

例3.24將“雇員”表張磊的出生日期改為“1960-1-11”

UPDATE雇員SET出生日期=#1960-1-11#

WHERE姓名=“張磊”;

6.DELETE語句

格式:

DELETE

FROM〈表名>

[WHERE(條件>];

例3.25將“雇員”表中“雇員號”為“0002”的記錄刪除

DELETEFROM雇員WHERE雇員號=“0002”;

7.SELECT語句

格式:

SELECT[ALLIDISTINCT]*1〈字段列表〉FROM〈表名1>[,(表名2>]...

[WHERE(條件表達(dá)式>]

[GROUPBY(字段名〉[HAVING(條件表達(dá)式>]]

[ORDERBY〈字段名〉[ASCIDESC]];

其中All(默認(rèn)):返回全部記錄;Distinct:略去選定字段中重復(fù)值的記錄;From:指明

字段的來源,即數(shù)據(jù)源表或查詢;Where:定義查詢條件;GroupBy:指明分組字段,

Having:指明分組條件,必須跟隨GroupBy使用;OrderBy:指明排序字段,AscIDesc:

排序方式,升序或降序。

例3.27查找并顯示“教師”表中“姓名”、“性別”、“工作時間”和“系別”4個字段

SELECT姓名,系別,工作時間,系別FROM教師;

例3.28查找1992年參加工作的男教師,并顯示“姓名”、“性別”、“學(xué)歷”、“職稱”、“系

別”和“聯(lián)系電話”

SELECT姓名,性別,學(xué)歷,職稱,系別,聯(lián)系電話FROM教師WHERE性別廿男

“AND工作時間>=#1/1/1992#;

3.6.3創(chuàng)建SQL特定查詢

SQL特定查詢分為聯(lián)合查詢、傳遞查詢、數(shù)據(jù)定義查詢和子查詢等4種。其中聯(lián)合查詢、

傳遞查詢、數(shù)據(jù)定義查詢不能在查詢“設(shè)計”視圖中創(chuàng)建,必須直接在“SQL”視圖中創(chuàng)建SQL

語句。對于子查詢,要在查詢設(shè)計網(wǎng)絡(luò)的“字段”行或“條件”行中輸入SQL語句。

1.聯(lián)合查詢

聯(lián)合查詢是將一個或多個表、一個或多個查詢組合起來,形成一個完整的查詢。執(zhí)行聯(lián)合

查詢時,將返回所包含的表或查詢中對應(yīng)字段的記錄。

2.傳遞查詢

傳遞查詢是自己并不執(zhí)行而是傳遞給另外一個數(shù)據(jù)庫來執(zhí)行的查詢。傳遞查詢可直接將命

令發(fā)送到ODBC數(shù)據(jù)庫服務(wù)器中,如SQLServer。使用傳遞查詢時,不必與服務(wù)器上的表

鏈接,就可以直接使用相應(yīng)的表。

例3-33查詢SQLServer數(shù)據(jù)庫(名為“教學(xué)管理系統(tǒng)”)中“教師”表和,裸程”表的信息,

顯示姓名,系別和課程名稱字段的值。

注意:如果將傳遞查詢轉(zhuǎn)換為另一種類型的查詢,例如選擇查詢,將丟失輸入的SQL語句。

如果在“ODBC連接字符串”屬性中沒有指定連接串,或者刪除了已有字符串,Access將使

用默認(rèn)字符串“ODBC”,并且在每次運行查詢時,提示連接信息。

3.數(shù)據(jù)定義查詢

數(shù)據(jù)定義查詢與其他查詢不同,利用它可以直接創(chuàng)建、刪除或更改表,或者在當(dāng)前數(shù)據(jù)

庫中創(chuàng)建索引。在數(shù)據(jù)定義查詢中要輸入SQL語句,每個數(shù)據(jù)定義查詢只能由一個數(shù)據(jù)定

義語句組成。

4.子查詢

在對Access表中的字段進(jìn)行查詢時,可以利用子查詢的結(jié)果進(jìn)行進(jìn)一步的查詢。不能將子

查詢作為單獨的一個查詢,必須與其他查詢相結(jié)合。

3.7編輯和使用查詢

3.7.1運行已創(chuàng)建的查詢

□通過工具欄上的“執(zhí)行”按鈕

□通過“數(shù)據(jù)庫”窗口中“查詢”對象下的“打開按鈕”

□鼠標(biāo)雙擊要運行的查詢

3.7.2編輯查詢中的字段

□添加字段

□刪除字段

□移動字段

3.7.3編輯查詢中的數(shù)據(jù)源

□添加表或查詢

□刪除表或查詢

3.7.4調(diào)整查詢的列寬

調(diào)整列寬的方法是:打開要修改查詢的設(shè)計視圖,將鼠標(biāo)指針移到要更改列的字段選

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論