課程目錄

一、數(shù)據(jù)庫(kù)的基本知識(shí)

1.什么是數(shù)據(jù)庫(kù)

數(shù)據(jù)庫(kù)這個(gè)詞有多種解釋,簡(jiǎn)單的定義是這樣的:數(shù)據(jù)庫(kù)(DataBase)是結(jié)構(gòu)化數(shù)據(jù)的集合。

從廣義上講,數(shù)據(jù)庫(kù)就是數(shù)據(jù)或信息的集合,相當(dāng)于一個(gè)數(shù)據(jù)倉(cāng)庫(kù)。具體來說,數(shù)據(jù)庫(kù)是一組經(jīng)過計(jì)算機(jī)整理后的數(shù)據(jù),在關(guān)系數(shù)據(jù)庫(kù)中,它由許多數(shù)據(jù)表組成。

David M.Kroenke關(guān)于數(shù)據(jù)庫(kù)的定義是:數(shù)據(jù)庫(kù)是指自描述的完整記錄的集合。它表達(dá)了三層含義:

⑴ 數(shù)據(jù)庫(kù)是自描述的。

數(shù)據(jù)庫(kù)除了包含用戶的源數(shù)據(jù)以外,還包含關(guān)于它本身結(jié)構(gòu)的描述,這個(gè)描述稱作數(shù)據(jù)詞典(或數(shù)據(jù)目錄、元數(shù)據(jù))。從這個(gè)意義上講,數(shù)據(jù)庫(kù)與作為一個(gè)自描述的書的集合的圖書館相似:除了書籍以外,圖書館還包含一個(gè)描述它們的卡片目錄。

⑵ 數(shù)據(jù)庫(kù)是集成記錄的集合。

數(shù)據(jù)的標(biāo)準(zhǔn)結(jié)構(gòu)如下:位 —> 字節(jié) —> 域 —> 記錄 —> 文件, 按這種模式說,文件組合成數(shù)據(jù)庫(kù)是非常誘人的,但卻無法深入,數(shù)據(jù)庫(kù)將包含四種數(shù)據(jù):用戶數(shù)據(jù)文件、元數(shù)據(jù)、索引、應(yīng)用元數(shù)據(jù)。

用戶數(shù)據(jù)大多表示為表格,稱之為數(shù)據(jù)表,它存放了用戶的各種有用資料和數(shù)據(jù)。例如:

學(xué)生姓名

指導(dǎo)老師

老師電話

劉小景

錢志國(guó)

5666043

李  娟

楊一如

5666120

古介新

吳  萌

4108219

屈  達(dá)

錢志國(guó)

5666043

王成義

吳  萌

4108219

元數(shù)據(jù)是關(guān)于用戶數(shù)據(jù)的結(jié)構(gòu)的描述,稱之為系統(tǒng)表。例如:

表名

字段數(shù)

主關(guān)鍵字

Student

7

學(xué)號(hào)

Adviser

4

姓名

Guideplan

3

學(xué)生姓名

索引數(shù)據(jù)改進(jìn)了數(shù)據(jù)庫(kù)的性能和可訪問性,稱之為概括數(shù)據(jù)。例如:

學(xué)生姓名

指導(dǎo)老師

古介新

吳  萌

李  娟

楊一如

劉小景

錢志國(guó)

屈  達(dá)

錢志國(guó)

王成義

吳  萌

指導(dǎo)老師

老師電話

錢志國(guó)

5666043

吳  萌

4108219

楊一如

5666120

應(yīng)用元數(shù)據(jù)用來存儲(chǔ)用戶表格、報(bào)表、查詢、媒體數(shù)據(jù)和其它形式的應(yīng)用組件。并非所有的DBMS都支持應(yīng)用組件,支持應(yīng)用組件的DBMS也不一定把全部組件的結(jié)構(gòu)作為應(yīng)用元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中。

⑶ 數(shù)據(jù)庫(kù)是模型的模型。

數(shù)據(jù)庫(kù)是用戶關(guān)于現(xiàn)實(shí)世界的模型的模型。具體解釋是:非計(jì)算機(jī)操作數(shù)據(jù)的情況下,人們所建立的一套文件、表格、數(shù)字等的處理內(nèi)容和規(guī)則是人們關(guān)于現(xiàn)實(shí)世界的模型,在計(jì)算機(jī)操作數(shù)據(jù)的情況下,數(shù)據(jù)庫(kù)設(shè)計(jì)者將在人們關(guān)于現(xiàn)實(shí)世界的模型的基礎(chǔ)上再次建模,從而建立一個(gè)適用于計(jì)算機(jī)處理的數(shù)據(jù)庫(kù)模型。

三個(gè)世界的劃分:

現(xiàn)實(shí)世界(客觀世界):實(shí)體、實(shí)體集、屬性、實(shí)體標(biāo)識(shí)符

信息世界(觀念世界):記錄、文  件、字段、關(guān)鍵字

數(shù)據(jù)世界(計(jì)算機(jī)世界):位、字節(jié)、字、塊、卷

2.從文件管理到數(shù)據(jù)庫(kù)管理

前面提到從文件組合成數(shù)據(jù)庫(kù)是非常誘人的,但卻無法深入。實(shí)際上,在數(shù)據(jù)庫(kù)處理之前,確實(shí)采用的文件管理方式,即用數(shù)據(jù)文件來存放數(shù)據(jù),并通過高級(jí)語言完成對(duì)數(shù)據(jù)文件的操作。一個(gè)數(shù)據(jù)文件包含若干個(gè)“記錄(Record)”,一個(gè)記錄又包含若干個(gè)“數(shù)據(jù)項(xiàng)(Data Item)”,用戶通過對(duì)文件的訪問實(shí)現(xiàn)對(duì)記錄的存取。通常稱支持這種數(shù)據(jù)管理方式的軟件為“文件管理系統(tǒng)”,它一直是操作系統(tǒng)的重要組成部分。

隨著計(jì)算機(jī)處理的數(shù)據(jù)量不斷增加,文件管理系統(tǒng)采用的一次最多存取一個(gè)記錄的訪問方式,以及在不同文件之間缺乏相互聯(lián)系的結(jié)構(gòu),不能適應(yīng)管理大量數(shù)據(jù)的需要,于是數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)運(yùn)而生,并在上世紀(jì)60年代末誕生了第一個(gè)商業(yè)化的數(shù)據(jù)庫(kù)系統(tǒng)——IBM的IMS(Information Management System)。

3.?dāng)?shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)

與文件系統(tǒng)比較,數(shù)據(jù)庫(kù)系統(tǒng)有下列特點(diǎn):

⑴ 數(shù)據(jù)的結(jié)構(gòu)化。文件系統(tǒng)中單個(gè)文件的數(shù)據(jù)一般是有結(jié)構(gòu)的,但從整個(gè)系統(tǒng)來看,數(shù)據(jù)在整體上沒有結(jié)構(gòu),數(shù)據(jù)庫(kù)系統(tǒng)則不同,在同一數(shù)據(jù)庫(kù)中的數(shù)據(jù)文件是有聯(lián)系的,且在整體上服從一定的結(jié)構(gòu)形式。

⑵ 數(shù)據(jù)的共享性。在文件系統(tǒng)中,數(shù)據(jù)一般是由特定的用戶專用,數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)可以有為不同部門、不同單位甚至不同用戶所共享。

⑶ 數(shù)據(jù)的獨(dú)立性。在文件系統(tǒng)中,數(shù)據(jù)結(jié)構(gòu)和應(yīng)用程序相互依賴,一方的改變總是要影響到另一方的改變。數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)文件與應(yīng)用程序之間的這種依賴關(guān)系已大大減小。

⑷ 數(shù)據(jù)的完整性。在數(shù)據(jù)庫(kù)系統(tǒng)中,可以通過對(duì)數(shù)據(jù)的性質(zhì)進(jìn)行檢查而管理它們,使之保持完整正確。如商品的價(jià)格不能為負(fù)數(shù),一場(chǎng)電影的定票數(shù)不能超過電影院的座位數(shù)。

⑸ 數(shù)據(jù)的靈活性。數(shù)據(jù)庫(kù)系統(tǒng)不是把數(shù)據(jù)簡(jiǎn)單堆積,而是在記錄數(shù)據(jù)信息的基礎(chǔ)上具有多種管理功能,如輸入、輸出、查詢、編輯、修改等。

⑹ 數(shù)據(jù)的安全性。數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)具有安全管理功能。

⑺ 數(shù)據(jù)可控冗余度。數(shù)據(jù)專用時(shí),每個(gè)用戶擁有使用自己的數(shù)據(jù),難免會(huì)出現(xiàn)數(shù)據(jù)相互重復(fù),這就是數(shù)據(jù)冗余。實(shí)現(xiàn)數(shù)據(jù)共享后,不必要的數(shù)據(jù)重復(fù)將全部消除,有時(shí)為了提高查詢效率,也保留少量的重復(fù)數(shù)據(jù),其冗余度可以由設(shè)計(jì)者控制。

4.?dāng)?shù)據(jù)庫(kù)系統(tǒng)的分代

數(shù)據(jù)庫(kù)系統(tǒng)可分為三代。

⑴ 非關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)。是對(duì)第一代數(shù)據(jù)庫(kù)系統(tǒng)的總稱,包括層次型數(shù)據(jù)庫(kù)系統(tǒng)和網(wǎng)狀型數(shù)據(jù)庫(kù)系統(tǒng)。其主要特點(diǎn)是:采用“記錄”作為基本數(shù)據(jù)結(jié)構(gòu),在不同“記錄型”之間,允許存在相互聯(lián)系,一次查詢只能訪問數(shù)據(jù)庫(kù)中的一個(gè)記錄。(P3)

⑵ 關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)(RDBS)。1970年,E.F.Codd在一篇名為“A Relational Model of Data For Large Shared Databanks(大型共享數(shù)據(jù)庫(kù)數(shù)據(jù)的關(guān)系模型)”文章提出了“關(guān)系模型”的概念。70年代中期,商業(yè)化的RDBS問世,數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)入第二代,目前PC機(jī)上使用的數(shù)據(jù)庫(kù)系統(tǒng)主要是第二代數(shù)據(jù)庫(kù)系統(tǒng)。其主要特點(diǎn)是:采用“表格”作為基本數(shù)據(jù)結(jié)構(gòu),在不同的表之間,允許存在相互聯(lián)系,一次查詢可以訪問整個(gè)表格中的數(shù)據(jù)。

⑶ 對(duì)象—關(guān)系模型數(shù)據(jù)系統(tǒng)(ORDBS)。將數(shù)據(jù)庫(kù)技術(shù)與面向?qū)ο蠹夹g(shù)相結(jié)合,以實(shí)現(xiàn)對(duì)多媒體數(shù)據(jù)和其它復(fù)雜對(duì)象數(shù)據(jù)的處理,這就產(chǎn)生了第三代數(shù)據(jù)庫(kù)系統(tǒng)。其主要特點(diǎn)是:包含第二代數(shù)據(jù)庫(kù)系統(tǒng)的功能,支持正文、圖形圖像、聲音等新的數(shù)據(jù)類型,支持類、繼承、方法等對(duì)象機(jī)制,提供高度集成的、可支持客戶/服務(wù)器應(yīng)用的用戶接口。

二、數(shù)據(jù)庫(kù)管理系統(tǒng)和數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)

1.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng)

實(shí)際上,數(shù)據(jù)庫(kù)是存于某種存儲(chǔ)介質(zhì)上的相關(guān)數(shù)據(jù)有組織的集合,為了在計(jì)算機(jī)中對(duì)數(shù)據(jù)庫(kù)進(jìn)行定義、描述、建立、管理和維護(hù),應(yīng)通過特定的數(shù)據(jù)庫(kù)語言進(jìn)行,這就需要一套支持該數(shù)據(jù)庫(kù)語言的系統(tǒng)軟件,稱作數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)。一般說,數(shù)據(jù)庫(kù)管理系統(tǒng)具有下列功能:

⑴ 數(shù)據(jù)定義功能。DBMS向用戶提供“數(shù)據(jù)定義語言(DDL)”,用于描述數(shù)據(jù)庫(kù)的結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫(kù)中其標(biāo)準(zhǔn)語言是SQL(Structured Query Language),它提供了DDL語句。

⑵ 數(shù)據(jù)操作功能。對(duì)數(shù)據(jù)庫(kù)進(jìn)行檢索和查詢,是數(shù)據(jù)庫(kù)的主要應(yīng)用。為此DBMS向用戶提供“數(shù)據(jù)操縱語言(DML)”,用于對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行查詢,同樣SQL也提供了DML語句。

⑶ 控制和管理功能。除了DDL和DML兩類語句外,DBMS還具有必要的控制和管理功能。

在討論可視化的數(shù)據(jù)庫(kù)管理系統(tǒng)(如VFP、Access)時(shí),一般而言,從組成結(jié)構(gòu)上看,DBMS的特點(diǎn)和功能可以分為三個(gè)子系統(tǒng):設(shè)計(jì)工具子系統(tǒng)、運(yùn)行子系統(tǒng)和DBMS引擎。

設(shè)計(jì)工具子系統(tǒng)提供設(shè)計(jì)工具,包括表生成、窗體生成、查詢生成、報(bào)表生成和過程語言編譯器等工具,設(shè)計(jì)工具子系統(tǒng)與開發(fā)人員相關(guān)聯(lián)。

運(yùn)行子系統(tǒng)提供對(duì)設(shè)計(jì)時(shí)產(chǎn)生的程序的執(zhí)行,它與用戶接口。

DBMS引擎介于設(shè)計(jì)工具及運(yùn)行子系統(tǒng)與數(shù)據(jù)本身之間。實(shí)際上,它將根據(jù)以上組件的請(qǐng)求,將其翻譯成對(duì)操作系統(tǒng)的命令,以實(shí)現(xiàn)對(duì)物理介質(zhì)上的數(shù)據(jù)的讀寫。除此之外,DBMS引擎還涉及事務(wù)管理、鎖定、備份和恢復(fù)等工作。

2.?dāng)?shù)據(jù)庫(kù)應(yīng)用系統(tǒng)

數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)(DataBase Application System、DBAS)專指基于數(shù)據(jù)庫(kù)的應(yīng)用系統(tǒng)。一個(gè)DBAS通常由數(shù)據(jù)庫(kù)和應(yīng)用程序兩部分組成,它們都需要在DBMS支持下開發(fā)。開發(fā)一個(gè)信息系統(tǒng),一是要設(shè)計(jì)數(shù)據(jù)庫(kù),二是要開發(fā)應(yīng)用程序。并且,這二者亦是相互關(guān)聯(lián)的。

三、Access 2003內(nèi)部結(jié)構(gòu)

Access 2003是一個(gè)功能強(qiáng)大、方便靈活的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。Access 2003作為一個(gè)小型數(shù)據(jù)庫(kù)管理系統(tǒng),它最多能為由此由25-30臺(tái)計(jì)算機(jī)組成的小型網(wǎng)絡(luò)服務(wù)。

進(jìn)入Access 2003,打開一個(gè)示例數(shù)據(jù)庫(kù),可以看到如下的界面,在這個(gè)界面的【對(duì)象】欄中,包含有Access 2003的七個(gè)對(duì)象。另在【組】欄中,可以包含數(shù)據(jù)庫(kù)中不同類型對(duì)象的快捷方式的列表,通過創(chuàng)建組,并將對(duì)象添加到組,從而創(chuàng)建了相關(guān)對(duì)象的快捷方式集合。

Access 2003所提供的對(duì)象均存放在同一個(gè)數(shù)據(jù)庫(kù)文件(.mdb)中。Access 2003中各對(duì)象的關(guān)系如下圖所示。

下面對(duì)Access 2003每一類對(duì)象進(jìn)行簡(jiǎn)單介紹。

1. 表

表是Access 2003中所有其他對(duì)象的基礎(chǔ),因?yàn)楸泶鎯?chǔ)了其他對(duì)象用來在Access 2003中執(zhí)行任務(wù)和活動(dòng)的數(shù)據(jù)。每個(gè)表由若干記錄組成,每條記錄都對(duì)應(yīng)于一個(gè)實(shí)體,同一個(gè)表中的所有記錄都具有相同的字段定義,每個(gè)字段存儲(chǔ)著對(duì)應(yīng)于實(shí)體的不同屬性的數(shù)據(jù)信息。請(qǐng)看下圖。

郵箱
huangbenjincv@163.com

黄龙县| 南岸区| 丰顺县| 乐山市| 永泰县| 临桂县| 射洪县| 和平区| 祥云县| 宜都市| 蒙阴县| 荣成市| 永清县| 琼海市| 祁门县| 芦山县| 会泽县| 贵德县| 林口县| 阿拉善左旗| 禹城市| 米脂县| 竹北市| 布拖县| 东乡| 汽车| 山阴县| 北辰区| 平果县| 瓮安县| 连州市| 乐平市| 沅陵县| 阿克| 乌拉特中旗| 遵义县| 绥江县| 甘洛县| 峨眉山市| 屯昌县| 武安市|