第二章 建立數(shù)據(jù)庫
本章內(nèi)容
◆ 數(shù)據(jù)庫的設(shè)計(jì)概念與創(chuàng)建數(shù)據(jù)庫,。 ◆ 表的創(chuàng)建及表與表之間的關(guān)系,。 ◆ 數(shù)據(jù)庫的修改、設(shè)計(jì)與編輯,。
一,、數(shù)據(jù)庫的設(shè)計(jì)
1.概念及準(zhǔn)則
下面介紹數(shù)據(jù)庫設(shè)計(jì)的概念,及由此而產(chǎn)生的數(shù)據(jù)庫設(shè)計(jì)準(zhǔn)則,。 Access 2003數(shù)據(jù)庫是所有相關(guān)對象的集合,,包括表、查詢,、窗體,、報表、宏,、模塊,、Web頁等。每一個對象都是數(shù)據(jù)庫的一個組成部分,,其中,,表是數(shù)據(jù)庫的基礎(chǔ),它記錄數(shù)據(jù)庫中的全部數(shù)據(jù)內(nèi)容,。而其他對象只是Access提供的用于對數(shù)據(jù)庫進(jìn)行維護(hù)的工具而已,。正因?yàn)槿绱耍O(shè)計(jì)一個數(shù)據(jù)庫的關(guān)鍵,,就集中在建立數(shù)據(jù)庫中的基本表上,。 關(guān)系型數(shù)據(jù)庫不管設(shè)計(jì)得好壞,都可以存取數(shù)據(jù),,但是不同的數(shù)據(jù)庫在存取數(shù)據(jù)的效率上有很大的差別,。為了更好的設(shè)計(jì)數(shù)據(jù)庫中的表,下面提供幾條一般規(guī)則供大家討論,。 ⑴ 字段唯一性,。即表中的每個字段只能含有惟一類型的數(shù)據(jù)信息。在同一字段內(nèi)不能存放兩類信息,。 ⑵ 記錄唯一性,。即表中沒有完全一樣的兩個記錄。在同一個表中保留相同的兩具記錄是沒有意義的,。要保證記錄的唯一性,,就必須建立主關(guān)鍵字。 ⑶ 功能相關(guān)性。即在數(shù)據(jù)庫中,,任意一個數(shù)據(jù)表都應(yīng)該有一個主關(guān)鍵字段,該字段與表中記錄的各實(shí)體相對應(yīng),。這一規(guī)則是針對表而言的,,它一方面要求表中不能包含該表無關(guān)的信息,另一方面要求表中的字段信息要能完整地描述某一記錄,。 ⑷ 字段無關(guān)性,。即在不影響其他字段的情況下,必須能夠?qū)θ我庾侄芜M(jìn)行修改(非主關(guān)鍵字段),。所有非主關(guān)鍵字段都依賴于主關(guān)鍵字,,這一規(guī)則說明了非主關(guān)鍵字段之間的關(guān)鍵是相互獨(dú)立的。 這些內(nèi)容涉及到關(guān)系模型與規(guī)范化問題,,這里不作理論分析,,我們將在數(shù)據(jù)庫原理中學(xué)習(xí)和討論。
2. 一般步驟
按照上面幾條原則,,可以設(shè)計(jì)一個比較好的數(shù)據(jù)庫及基本表,。當(dāng)然數(shù)據(jù)庫的設(shè)計(jì)遠(yuǎn)不止這些,還需要設(shè)計(jì)者的經(jīng)驗(yàn)和對實(shí)際事務(wù)的分析和認(rèn)識,。不過可以就這幾條規(guī)則總結(jié)出創(chuàng)建數(shù)據(jù)庫的一般步驟,。 ⑴ 明確建立數(shù)據(jù)庫的目的。即用數(shù)據(jù)庫做哪些數(shù)據(jù)的管理,,有哪些需求和功能,。然后再決定如何在數(shù)據(jù)庫中組織信息以節(jié)約資源,怎樣利用有限的資源以發(fā)揮最大的效用,。 ⑵ 確定所需要的數(shù)據(jù)表,。在明確了建立數(shù)據(jù)庫的目的之后,就可以著手把信息分成各個獨(dú)立的主題,,每一個主題都可以是數(shù)據(jù)庫中的一個表,。 ⑶ 確定所需要的字段。確定在每個表中要保存哪些信息,。在表中,,每類信息稱作一個字段,在表中顯示為一列,。 ⑷ 確定關(guān)系,。分析所有表,確定表中的數(shù)據(jù)和其他表中的數(shù)據(jù)有何關(guān)系,。必要時,,可在表中加入字段或創(chuàng)建新表來明確關(guān)系。 ⑸ 改進(jìn)設(shè)計(jì)。對設(shè)計(jì)進(jìn)一步分析,,查找其中的錯誤,。創(chuàng)建表,在表中加入幾個實(shí)際數(shù)據(jù)記錄,,看能否從表中得到想要的結(jié)果,。需要時可調(diào)整設(shè)計(jì)。
3. 實(shí)例剖析
下面以小型公司為例,,建立客戶,、訂單、產(chǎn)品,、雇員管理的數(shù)據(jù)庫,。
⑴ 明確目的。 ◆ 公司中有哪些雇員及其自然情況(何時被聘),、工作情況(銷售業(yè)績)等,。 ◆ 公司中有哪些產(chǎn)品及其種類、單價,、庫存量,、定貨量等。 ◆ 公司有哪些客戶,,客戶的姓名,、地址、聯(lián)系方式及有何訂貨要求等,。
⑵ 確定數(shù)據(jù)表,。 ◆ 客戶表。存儲客戶信息,。 ◆ 雇員表,。存儲雇員信息。 ◆ 產(chǎn)品表,。存儲產(chǎn)品信息,。 ◆ 訂單明細(xì)表。存儲客戶訂單信息,。
⑶ 確定字段信息,。 在上述相關(guān)的表中,我們可以初步確定如下必要的字段信息,。習(xí)慣上,,每個表都可人為設(shè)定一個關(guān)鍵字段。如訂單表中,,它的主關(guān)鍵字段是由多個字段組成的(產(chǎn)品編號,、訂貨日期,、客戶編號、雇員編號),,同時為了方便,,也可建立一個訂單編號作為主關(guān)鍵字段,它本來是可有可無的,。 請看下圖所示的字段,。
⑷ 確定表間關(guān)系。 要建立兩個表之間的關(guān)系,,可以把其中一個表的主關(guān)鍵字段添加到另一個表中,使兩個表都有該字段,。 下圖中,,課單明細(xì)表中的主關(guān)鍵字段是由多個字段組成的。當(dāng)然也可以如上所示地設(shè)立一個訂單編號作為主關(guān)鍵字段,。
⑸ 改進(jìn)設(shè)計(jì),。 上圖中每一個表中的字段設(shè)置可以進(jìn)一步完善和改進(jìn),甚至可以建立不同于初步設(shè)計(jì)時的新表來完成,。如有需要,,為了進(jìn)行雇員工資的發(fā)放,可以建立工資表,。
二,、建立一個數(shù)據(jù)庫
下面是Microsoft Access 2003的界面?;谶@個界面,,創(chuàng)建一個新的數(shù)據(jù)庫的方法是多樣的,也是十分簡單的,。
1.利用模板新建數(shù)據(jù)庫
為了方便用戶的使用,,Access 2003提供了一些標(biāo)準(zhǔn)的數(shù)據(jù)框架,又稱為“模板”,。這些模板不一定符合用戶的實(shí)際要求,,但在向?qū)У膸椭拢瑢@些模板稍加修改,,即可建立一個新的數(shù)據(jù)庫,。另外,通過這些模板還可以學(xué)習(xí)如何組織構(gòu)造一個數(shù)據(jù)庫,。
Office Online 模板可通過在線查找所需要的數(shù)據(jù)庫模板,。
選擇本機(jī)上的模板,出現(xiàn)如下窗體:
選擇工時與賬單模板,,如下圖:
命名存盤后,,向?qū)缦拢?/span>
下面是數(shù)據(jù)庫中的表和字段:
如果修改字段,,有些不能修改的將給出提示信息:
選擇屏幕的顯示樣式:
確定打印報表所用的樣式:
指定數(shù)據(jù)庫的標(biāo)題,并確定是否給出圖片:
完成數(shù)據(jù)的建立:
完成數(shù)據(jù)庫建立所有工作之前,,給出公司信息:
切換在數(shù)據(jù)庫啟動的主控頁面:
以下是數(shù)據(jù)的建立之后的內(nèi)容:
通過模板建立數(shù)據(jù)庫雖然簡單,,但是有時候它根本滿足不了實(shí)際的需要。一般來說,,對數(shù)據(jù)庫有了進(jìn)一步了解之后,,我們就不再去用向?qū)?chuàng)建數(shù)據(jù)庫了。高級用戶很少使用向?qū)А?/span>
2. 直接建立一個數(shù)據(jù)庫
選擇建立空數(shù)據(jù)庫,,其中的各類對象暫時沒有數(shù)據(jù),,而是在以后的操作過程中,根據(jù)需要逐步建立起來,。
新的空數(shù)據(jù)庫窗口如下:
3. 根據(jù)現(xiàn)有文件新建數(shù)據(jù)庫
Access 2003提供了“根據(jù)現(xiàn)有文件新建數(shù)據(jù)庫”的功能,,這與以前的版本有不同之處。
新建的數(shù)據(jù)庫與選中的現(xiàn)有數(shù)據(jù)庫文件存放在同一文件夾中,,但是它的文件名有一個統(tǒng)一的改變,,即在原現(xiàn)有文件之主文件名后增加“1”,以示區(qū)別,,這樣就產(chǎn)生了現(xiàn)有數(shù)據(jù)庫文件的一個復(fù)制副本,。
2. 打開已存在的數(shù)據(jù)庫
要使用數(shù)據(jù)庫,Access 2003需要打開數(shù)據(jù)庫,。
在打開數(shù)據(jù)庫對話框右上角,,有一些按鈕:
返回前一級、向上一級文件夾,、Web搜索,、刪除、新建文件夾,、視圖方式,、工具項(xiàng)
5. 查看數(shù)據(jù)庫屬性
數(shù)據(jù)庫是Access對象,因此具有屬性,,屬性包括文件名,、文件大小、位置,、由誰修必,、最后修改日期。數(shù)據(jù)庫屬性分為5類:“常規(guī)”,、“摘要”,、“統(tǒng)計(jì)”、“內(nèi)容”,、“自定義”,。
三,、創(chuàng)建簡單表
建立了空的數(shù)據(jù)庫之后,即可向數(shù)據(jù)庫中添加對象,,其中最基本的是表,。簡單表的創(chuàng)建有多種方法,使用向?qū)?、設(shè)計(jì)器,、通過輸入數(shù)據(jù)都可以建立表。最簡單的方法是使用表向?qū)?,它提供了一些模板?/span>
1. 使用向?qū)?chuàng)建表
表向?qū)峁﹥深惐恚荷虅?wù)表和個人表,。商務(wù)表包括客戶、雇員和產(chǎn)品等常見表模板,;個人表包括家庭物品清單,、食譜、植物和運(yùn)動日志等表模板,。
下面假設(shè)建立一個客戶表:
如果先中的是第一項(xiàng),,則可修改表的結(jié)構(gòu):
2. 表設(shè)計(jì)器
雖然向?qū)峁┝艘环N簡單快捷的方法來建立表,,但如果向?qū)Р荒芴峁┯脩羲枰淖侄?,則用戶還得重新創(chuàng)建。這時,,絕大多數(shù)用戶都是在表設(shè)計(jì)器中來設(shè)計(jì)表的,。
工具欄上包括如下工具對象:
視圖、保存,、搜索,、主鍵、索引,、插入行,、刪除行、屬性,、生成器,、數(shù)據(jù)庫窗口、新對象
3. 字段,、數(shù)據(jù)類型,、字段屬性
⑴ 字段
字段是通過在表設(shè)計(jì)器的字段輸入?yún)^(qū)輸入字段名和字段數(shù)據(jù)類型而建立的。表中的記錄包含許多字段,,分別存儲著關(guān)于每個記錄的不同類型的信息(屬性),。 在設(shè)計(jì)字段名稱時,某些字符不允許出現(xiàn)在字段名稱中: 句點(diǎn) . 驚嘆號 ! 方括號 [] 左單引號 ‘
字段名中可以使用大寫或小寫,,或大小寫混合的字母,。字段名可以修改,,但一個表的字段在其它對象中使用了,修改字段將帶來一致性的問題,。 字段名最長可達(dá)64個字符,,但是用戶應(yīng)該盡量避免使用過長的字段名。
⑵ 數(shù)據(jù)類型
Access 2003 為字段提供了十種數(shù)據(jù)類型:
數(shù)據(jù)類型 用途 字符長度
文本 字母和數(shù)字 0 ~ 255 個字符 備注 字母和數(shù)字 0 ~ 64000個字符 數(shù)字 數(shù)值 1,、2,、4或8字節(jié) 日期/時間 日期/時間 8字節(jié) 貨幣 數(shù)值 8字節(jié) 自動編號 自動數(shù)字 4字節(jié) 是/否 是/否、真/假 1位 OLE對象 鏈接或嵌入對象 可達(dá)1G 超鏈接 Web地址,、郵件地址 可達(dá)64000字節(jié) 查閱向?qū)?span lang=EN-US> 來自其他表或列表的值 通常為4字節(jié)
對于某一具體數(shù)據(jù)而言,,可以使用的數(shù)據(jù)類型可能有多種,例如電話號碼可以使用數(shù)字型,,也可使用文本型,,但只有一種是最合適的。 主要考慮的幾個方面如下: ◆ 字段中可以使用什么類型的值,。 ◆ 需要用多少存儲空間來保存字段的值,。 ◆ 是否需要對數(shù)據(jù)進(jìn)行計(jì)算(主要區(qū)分是否用數(shù)字,還是文本,、備注等),。 ◆ 是否需要建立排序或索引(備注、超鏈接及OLE對象型字段不能使用排序和索引),。 ◆ 是否需要進(jìn)行排序(數(shù)字和文本的排序有區(qū)別),。 ◆ 是否需要在查詢或報表中對記錄進(jìn)行分組(備注、超鏈接及OLE對象型字段不能用于分組記錄),。
⑶ 字段屬性
字段有一些基本屬性(如字段名,、字段類型、字段寬度及小數(shù)點(diǎn)位數(shù)),,另外對于不同的字段,,還會有一些不同的其它屬性。 ◆ 字段大小,。文本型默認(rèn)值為50字節(jié),,不超過255字節(jié)。不同種類存儲類型的數(shù)字型,,大小范圍不一樣,。 ◆ 格式,。利用格式屬性可在不改變數(shù)據(jù)存儲情況的條件下,,改變數(shù)據(jù)顯示與打印的格式。文本和備注型數(shù)據(jù)的格式最多可由三個區(qū)段組成,,每個區(qū)段包含字段內(nèi)不同的數(shù)據(jù)格式之規(guī)格,。 第一區(qū)段描述文本字段的格式,。 第二區(qū)段描述零長度字符串的格,。 第三區(qū)段描述Null值字段的格式。 可以用4種格式符號來控制輸入數(shù)據(jù)的格式: @ 輸入字符為文本或空格,。 & 不需要使用文本字符,。 < 輸入的所有字母全部小寫(放在格式開始)。 > 輸入的所有字母全部大寫(放在格式開始),。
◆ 小數(shù)位數(shù),。小數(shù)位數(shù)只有數(shù)字和貨幣型數(shù)據(jù)可以使用。小數(shù)位數(shù)為0 ~ 15位,,視數(shù)字或貨幣型數(shù)據(jù)的字段大小而定,。 ◆ 標(biāo)題。標(biāo)題用來在報表和窗體中替代字段名稱,。要求簡短,、明確,以便于管理和使用,。 ◆ 默認(rèn)值,。默認(rèn)值是新記錄在數(shù)據(jù)表中自動顯示的值。默認(rèn)值只是開始值,,可在輸入時改變,,其作用是為了減少輸入時的重復(fù)操作。 ◆ 有效性規(guī)則,。數(shù)據(jù)的有效性規(guī)則用于對字段所接受的值加以限制,。有些有效性規(guī)則可能是自動的,,如檢查數(shù)值字段的文本或日期值是否合法,。有效性規(guī)則也可以是用戶自定義的。 例如: <100 Between#1/1/1970#and#12/31/2003#
◆ 有效性文本,。有效性文本用于在輸入的數(shù)據(jù)違反該字段有效性規(guī)則時出現(xiàn)的提示,。其內(nèi)容可以直接在【有效性文本】框內(nèi)輸入,或光標(biāo)位于該文本框時按Shift+F2,,打開顯示比例窗口,。 ◆ 掩碼。輸入掩碼為數(shù)據(jù)的輸入提供了一個模板,,可確保數(shù)據(jù)輸入表中時具有正確的格式,。比如:在密碼框中輸入的密碼不能顯示出來,只能以“*”形式顯示,,那么只需要在【輸入掩碼】文本框內(nèi)設(shè)置為“*”即可,。 輸入掩碼可以打開一個向?qū)В鶕?jù)提示輸入正確的掩碼,。
4. 使用設(shè)計(jì)器創(chuàng)建表的一般步驟
對表設(shè)計(jì)器,、字段,、字段屬性、字段數(shù)據(jù)類型有所了解之后,,現(xiàn)在再來看用表設(shè)計(jì)器創(chuàng)建表的一般步驟,。
⑴ 打開空表設(shè)計(jì)器。
⑵ 輸入【客戶編號】字段名,,設(shè)置為主關(guān)鍵字段(主鍵),。 ⑶ 設(shè)定數(shù)據(jù)類型為“數(shù)字”。 ⑷ 用同樣的方法建立【客戶名】,、【聯(lián)系人】,、【聯(lián)系電話】等字段并設(shè)置字段的屬性。
⑸ 輸入說明文字,。保存表結(jié)構(gòu)的設(shè)計(jì),,用另存為,給出表名,。 ⑹ 查看表視圖,,可輸入記錄數(shù)據(jù)。 5. 通過輸入數(shù)據(jù)建立表
Access 2003 還提供了一種通過輸入數(shù)據(jù)建立表的方法,。如果沒有確定表的結(jié)構(gòu),,但是手中有表所要存儲的數(shù)據(jù),可直接采用此方法建立表,。在新建表時,,選取【數(shù)據(jù)表視圖】即可進(jìn)入此方法。默認(rèn)情況下,,該表有10個字段,,可增刪,可重命名,。
四,、設(shè)定表之間的關(guān)系
數(shù)據(jù)庫中的各表之間并不是孤立的,它們彼此之間存在或多或少的聯(lián)系,,這就是“表間關(guān)系”,。這也正是數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的重點(diǎn)區(qū)別。
1. 表的索引
當(dāng)表中的數(shù)據(jù)很多時,,需要利用索引幫助用戶更有效地查詢數(shù)據(jù),。
⑴ 索引的概念 索引的概念涉及到記錄的物理順序與邏輯順序。文件中的記錄一般按其磁盤存儲順序輸出,,這種順序稱為物理順序,。索引不改變文件中記錄的物理順序,而是按某個索引關(guān)鍵字(或表達(dá)式)來建立記錄的邏輯順序。在索引文件中,,所有關(guān)鍵字值按升序或降序排列,,每個值對應(yīng)原文件中相應(yīng)的記錄的記錄號,這樣便確定了記錄的邏輯順序,。今后的某些對文件記錄的操作可以依據(jù)這個索引建立的邏輯順序來操作,。 請看下面,第一張表是原表文件內(nèi)容,,第二張表是依據(jù)“學(xué)生姓名”建立的一個排序文件,,第三張表是依據(jù)“學(xué)生姓名”建立的一個索引文件。
顯然,,索引文件也會增加系統(tǒng)開銷,,我們一般只對需要頻繁查詢或排序的字段創(chuàng)建索引。而且,,如果字段中許多值是相同的,,索引不會顯著提高查詢效率。 以下數(shù)據(jù)類型的字段值能進(jìn)行索引設(shè)置:字段數(shù)據(jù)類型為文本,、數(shù)字,、貨幣、日期/時間型,,搜索保存在字段中的值,,排序字段中的值。 表的主鍵將自動被設(shè)置為索引,,而備注,、超鏈接及OLE對象等類型的字段則不能設(shè)置索引。 Access 2003 為每個字段提供了3個索引選項(xiàng):“無”,、“有(有重復(fù))”,、“有(無重復(fù))”。 ⑵ 單字段索引 索引可分為單一字段索引和多字段索引兩種,。一般情況下,,表中的索引為單一字段索引,。建立單一字段索引的方法如下: ◆ 打開表設(shè)計(jì)視圖,,單擊要創(chuàng)建索引的字段,該字段屬性將出現(xiàn)在【字段屬性】區(qū)域中,。 ◆ 打開【常規(guī)】選項(xiàng)卡的【索引】下拉列表,,在其中選擇“有(有重復(fù))”選項(xiàng)或“有(無重復(fù))”選項(xiàng)即可。 ◆ 然后保存修改,。
⑶ 多字段索引 如果經(jīng)常需要同時搜索或排序更多的字段,,那么就需要為組合字段設(shè)置索引。建立多字段索引的操作步驟如下: ◆ 在表的設(shè)計(jì)視圖中單擊工具欄中的【索引】按鈕,彈出索引對話框,。 ◆ 在【索引名稱】列的第一個空行內(nèi)輸入索引名稱,,索引名稱一般與索引字段名相同。 ◆ 選字段名稱,,設(shè)置排序次序,。 注意:建立索引,在很大程度上與表的關(guān)聯(lián)及查詢設(shè)計(jì)有重要意義,。
2. 表的主關(guān)鍵字
數(shù)據(jù)庫中的每一個表都必須有一個主關(guān)鍵字,。它用于保證表中的每條記錄都是唯一的。 定義主鍵的方法很簡單,,具體方法可操作一下,。更改主鍵時,首先要刪除舊的主鍵,,而刪除舊的主鍵,,先要刪除其被引用的關(guān)系。
3. 創(chuàng)建并查看表間關(guān)系
可以在包含類似信息或字段的表之間建立關(guān)系,。在表中的字段之間可以建立3種類型的關(guān)系:一對一,、一對多、多對多,;而多對多關(guān)系可以轉(zhuǎn)化為一對一和一對多關(guān)系,。 一對一關(guān)系存在于兩個表中含有相同信息的相同字段,即一個表中的每條記錄都只對應(yīng)于相關(guān)表中的一條匹配記錄,。如雇員表和人力資源表,。 一對多關(guān)系存在于當(dāng)一個表中的每一條記錄都對應(yīng)于相關(guān)表中的一條或多條匹配記錄時。如產(chǎn)品表與銷售表,。
⑴ 創(chuàng)建關(guān)系 在表與表之間建立關(guān)系,,不僅在于確立了數(shù)據(jù)表之間的關(guān)聯(lián),它還確定了數(shù)據(jù)庫的參照完整性,。即在設(shè)定了關(guān)系后,,用戶不能隨意更改建立關(guān)聯(lián)的字段。參照完整性要求關(guān)系中一張表中的記錄在關(guān)系的另一張表中有一條或多條相對應(yīng)的記錄,。 不同的表之間的關(guān)聯(lián)是通過表的主鍵來確定的,。因此當(dāng)數(shù)據(jù)表的主鍵更改時,Access 2003會進(jìn)行檢查,。 創(chuàng)建數(shù)據(jù)庫表關(guān)系的方法如下: ◆ 單擊數(shù)據(jù)庫窗口工具欄上的【關(guān)系】按鈕,,或者選擇【工具】|【關(guān)系】命令,打開關(guān)系窗口,。選擇【顯示表】(右擊選擇),,將表添加到設(shè)計(jì)窗口中。 ◆ 拖放一個表的主鍵到對應(yīng)的表的相應(yīng)字段上。根據(jù)要求重復(fù)此步驟,。
⑵ 查看關(guān)系
關(guān)系可以查看和編輯,。打開【關(guān)系】窗口,即可查看關(guān)系,;而雙擊表間的連線,,可以編輯任何連接關(guān)系,此時彈出編輯窗口,。
4. 表間關(guān)系的修改與打印
⑴ 修改和刪除關(guān)系 用戶可以編輯已有的關(guān)系,,或刪除不需要的關(guān)系。如上所述,,雙擊關(guān)系連線,,可編輯關(guān)系;而右擊連線,,選擇刪除,,可刪除關(guān)系。
⑵ 打印關(guān)系 一旦數(shù)據(jù)庫定義了所有關(guān)系,,就很容易用圖表來說明數(shù)據(jù)庫,。要打印關(guān)系圖,可在【關(guān)系】窗口中右擊任一空白區(qū)并選擇【全部顯示】命令,;選擇【文件】|【打印關(guān)系】命令,,即打印了打印關(guān)系圖的預(yù)覽圖,右擊選擇打印,,就可在打印機(jī)上打印關(guān)系圖,。
如果要了解數(shù)據(jù)庫關(guān)系的更準(zhǔn)確信息,包括諸如參照完整性和關(guān)系類型等屬性,,可通過選擇【工具】|【分析】命令,,打開【文檔管理器】來分析了解。
五,、修改數(shù)據(jù)庫結(jié)構(gòu)
在創(chuàng)建數(shù)據(jù)庫及表,,設(shè)定表間關(guān)系、表的索引,、表的主鍵之后,,隨著用戶對自己所建數(shù)據(jù)庫的用途更加深入了解,有時候會發(fā)現(xiàn),,當(dāng)初所建數(shù)據(jù)庫及表有很多需要改動的地方,,這就涉及到修改數(shù)據(jù)庫、表及對其進(jìn)行格式化的工作,。
1. 對表的操作
在使用中,用戶可能會對已有的數(shù)據(jù)庫進(jìn)行修改,在修改之前,,用戶應(yīng)該考慮全面,。因?yàn)楸硎菙?shù)據(jù)庫的核心,它的修改將會影響到整個數(shù)據(jù)庫,。打開的表或正在使用的表是不能進(jìn)行修改的,,必須先將其關(guān)閉。如果在網(wǎng)絡(luò)用使用,,必須保證所有用戶均已退出使用,。關(guān)系表中的關(guān)聯(lián)字段也是無法修改的,如果確實(shí)要修改,,必須先將關(guān)聯(lián)去掉,。
⑴ 備份表和復(fù)原 如果用戶需要修改多個表,那么最好將整個數(shù)據(jù)文件備份,。數(shù)據(jù)庫文件的備份,,與Windows下普通文件的備份一樣,復(fù)制一份即可,。復(fù)制方法很多而且簡單,,另有一種好方法就是【文件】菜單下的【另存為】選項(xiàng)。
⑵ 刪除表 如果數(shù)據(jù)庫中含有用戶不再需要的表,,可以將其刪除,。刪除數(shù)據(jù)庫表須慎重考慮,不可輕舉妄動,,要考慮清楚了,,方可實(shí)施,它是一個危險的動作,。
⑶ 更改表名 有時需要將表名更改,,使其具有新的意義,以方便數(shù)據(jù)庫的管理,。通過【重命名】可以很快地更改表名,。
⑷ 設(shè)置表屬性 有兩種類型的表屬性可以用于Access數(shù)據(jù)庫,一是表對象屬性,,二是表定義屬性,。 表對象屬性包括名稱、擁有者,、創(chuàng)建日期,、最后修正日期以及諸如“隱藏”、“或復(fù)制”等特性,。
在設(shè)計(jì)視圖中打開表,,同時打開【屬性】對話框,,可以查看和定義當(dāng)前設(shè)計(jì)表的屬性。
如果要更改默認(rèn)的表設(shè)計(jì)屬性,,可選擇【工具】|【選項(xiàng)】命令,,打開【表/查詢】選項(xiàng)卡。
如下兩圖:
2. 對字段的操作
當(dāng)用戶對字段名稱進(jìn)行修改時,,可能影響到字段中存放的一些相關(guān)數(shù)據(jù),。如果查詢、報表,、窗體等對象中使用了這個更名的字段,,那么這些對象中也要相應(yīng)地更改字段名的引用。更名的方法有兩種,,一是設(shè)計(jì)視圖,,二是數(shù)據(jù)表視圖。
⑴ 插入新字段 插入新字段也可以在設(shè)計(jì)視圖和數(shù)據(jù)表視圖中分別完成,。操作的方法是通過鼠標(biāo)拖動完成的,。
⑵ 移動字段 用戶可以通過表設(shè)計(jì)視圖來進(jìn)行移動字段的操作。
⑶ 復(fù)制字段 Access 2002 提供了復(fù)制字段功能,,以便在建立相同或相似的字段時使用,。它通過剪貼板操作完成。
⑷ 刪除字段 刪除字段可以在兩種視圖中完成,。應(yīng)當(dāng)注意:刪除字段將導(dǎo)致該字段的數(shù)據(jù)無法恢復(fù),。
⑸ 修改字段屬性 用戶可以在設(shè)計(jì)表結(jié)構(gòu)之后,重新更改字段的屬性,。其中最主要的是更改字段的數(shù)據(jù)類型和字段長度,。
3. 數(shù)據(jù)的有效性
⑴ 定義字段有效性規(guī)則 字段的有效性規(guī)則允許用戶限定字段的值,例如:可以限制年齡字段中年齡的輸入不能超過0 ~ 120這一范圍,。向【有效性規(guī)則】文本框中輸入一個表達(dá)式,,就可以定義一個字段中值的簡單核查規(guī)則。 要設(shè)置有效性規(guī)則,,可以在表設(shè)計(jì)窗口中單擊【有效性規(guī)則】右邊的按鈕,,打開【表達(dá)式生成器】。
一般情況下,,一個字段的有效性規(guī)則表達(dá)式中包含一個運(yùn)算符和一個比較值,。運(yùn)算符有如下幾種: < > <= >= = <> In(A1,A2,…,An) 檢查輸入數(shù)據(jù)是否為括號內(nèi)中的某一值。 Between A1 And An 要求輸入值必須介于兩值之間,。 Like 檢查一個文本或備注字段的值是否匹配一個模式字符串,。其通配符如下: 指代任何單一字符。 * 指代零個或多個字符,,用來定義標(biāo)題,、結(jié)尾,。 # 指代單個數(shù)字。
或以使用AND或OR操作符來組合準(zhǔn)則,,有效性規(guī)則可以含有用于同一字段的多個準(zhǔn)則,。下表給出規(guī)則與實(shí)例及相應(yīng)有效性消息,。
規(guī)則 Access 2003表達(dá)式 標(biāo)準(zhǔn)消息 <>0 <>0 數(shù)值必須不是0 100 or 200 100 or 200 數(shù)值必須是100或200 C* Like “C*” 文本必須以“C”開頭 C* or D* Like “C*” or Like “D*” 文本必須以“C”或“D”開頭 C??t Like “C??t” 以“C”開頭“t”結(jié)尾的4字符,。 >=01/01/99And<01/15/99 >=#1/1/99#And#1/15/99# 99年1月1日與99年1月15日之間 Not CA Not “CA” 字段可包含除“CA”外的任意值
⑵ 定義記錄有效規(guī)則 記錄有效規(guī)則是一個表屬性而不是一個字段屬性。一個表只能定義一條記錄有效規(guī)則,,若要使用多條準(zhǔn)則,,可利用AND或OR操作符把這些準(zhǔn)則組合在一個表達(dá)式中。
4. 對數(shù)據(jù)表的行與列的操作
⑴ 行操作 可以調(diào)整行高,,通過對話框方式或直接用鼠標(biāo)完成此操作,。
⑵ 列操作 由于屏幕大小限制,有時需要隱藏某些字段,。隱藏列的操作十分簡單:使某一列寬為0即將該列隱藏,。恢復(fù)隱藏列的操作須在數(shù)據(jù)一視圖下選擇【格式】|【取消隱藏列】命令,,彈出【取消隱藏列】對話框,。
六、使用與編輯數(shù)據(jù)表
1. 更改數(shù)據(jù)表的顯示方式
⑴ 改變字體 用戶可根據(jù)需要來選擇不同的字體,。選擇【格式】|【字體】命令,,將單出【字體】對話框。 ⑵ 設(shè)置單元格效果 用戶可以對數(shù)據(jù)表的單元格效果進(jìn)行設(shè)置,。其操作方法為選擇【格式】|【數(shù)據(jù)表】命令,,彈出【設(shè)置數(shù)據(jù)表格式】對話框。
2. 修改數(shù)據(jù)表中的數(shù)據(jù)
⑴ 插入新數(shù)據(jù) 當(dāng)向一個空表或者向已有數(shù)據(jù)的表增加新的數(shù)據(jù)時,,都要使用插入新記錄的功能,。
⑵ 修改數(shù)據(jù) 在數(shù)據(jù)表視圖中,用戶可以方便地修改已有的數(shù)據(jù)記錄,。注意保存,。
⑶ 替換數(shù)據(jù) 如果想把數(shù)據(jù)表中的某個數(shù)據(jù)替換為另一個數(shù)據(jù),可以進(jìn)行如下操作: 在數(shù)據(jù)表視圖中選中要替換的字段內(nèi)容,,然后選擇【編輯】|【替換】命令,,彈出【查找和替換】對話框。
⑷ 復(fù)制,、移動數(shù)據(jù) 利用剪貼板功能可以很方便地進(jìn)行復(fù)制,、移動數(shù)據(jù)操作功能。
⑸ 刪除記錄 可以利用【編輯】|【刪除】進(jìn)行刪除操作,,也可有快捷鍵方式完成該操作,。
3. 排列數(shù)據(jù)
Access 2003 根據(jù)主鍵值自動排序記錄,。在數(shù)據(jù)檢索和顯示期間,用戶可以按不同的順序來排序記錄,。在數(shù)據(jù)表視圖中,,可以對一個或多個字段進(jìn)行排序。升序的規(guī)則是按字母順序排列文本,,從最早到最晚排列日期/時間值,,從最低到最高排列數(shù)字與貨幣值。
亦可對子表進(jìn)行如上操作,。
對于多個字段的排序,,Access 2003 使用從左到右的優(yōu)先排序權(quán)。 排序后可存放,,而產(chǎn)生物理排序后的文件,。
4. 查找數(shù)據(jù)
用戶可以在數(shù)據(jù)表視圖中查找指定的數(shù)據(jù),其操作是通過【編輯】|【查找】命令來完成的,。 5. 篩選數(shù)據(jù)
篩選數(shù)據(jù)是只將符合篩選條件的數(shù)據(jù)記錄顯示出來,,以便用戶查看。篩選方法有5種,,分別按窗體篩選,、按選定內(nèi)容篩選、輸入篩選,、高級篩選/排序,、內(nèi)容排除篩選。
⑴ 按窗體篩選 在數(shù)據(jù)表視圖下,,工具欄上有兩個按鈕: 【按窗體篩選】按鈕,、 【應(yīng)用篩選】按鈕。
⑵ 按選定內(nèi)容篩選 按選定內(nèi)容篩選是指先選定數(shù)據(jù)表中的值,,然后在數(shù)據(jù)表中找出包含此值的記錄,。 先在數(shù)據(jù)表中選中字段中某記錄的值,然后,,選擇【記錄】|【篩選】|【按選定內(nèi)容篩選】命令,,單擊工具欄上的【按選定內(nèi)容篩選】按鈕。
⑶ 內(nèi)容排除篩選 用戶有時不需要查看某些記錄,,或已經(jīng)查看過記錄而不想再將其顯示出來,,這時就要用排除篩選。方法是: 先在數(shù)據(jù)表中選中字段中某記錄的值,,然后,,選擇【記錄】|【篩選】|【內(nèi)容排除篩選】命令。右擊需要的值并從快捷菜單中選擇【內(nèi)容排除篩選】命令,。
⑷ 輸入篩選 輸入篩選根據(jù)指定的值或表達(dá)式,,查找與篩選條件相符合的記錄,。其操作過程如下: 在數(shù)據(jù)表視圖中單擊要篩選的列的某一單元格,然后右擊,,彈出快捷菜單,。在篩選目標(biāo)中輸入篩選內(nèi)容。
6. 高級篩選與排序
高級篩選與排序可以應(yīng)用于一個或多個字段的排序或篩選,。高級篩選/排序窗口分為上下兩部分,,上面是含有表的字段列表,下面是設(shè)計(jì)網(wǎng)格,。
⑴ 創(chuàng)建篩選 要創(chuàng)建一個高級篩選,,首先要把字段添加到用于排序和規(guī)定篩選準(zhǔn)則的設(shè)計(jì)網(wǎng)格中,。
⑵ 設(shè)置篩選條件 在【條件】行中,,可添加要顯示記錄的條件,它的設(shè)置方法與按窗體篩選的設(shè)置方法一樣,。
⑶ 篩選的使用 用戶如果保存了篩選,,則該篩選與表一起保存,而不作為獨(dú)立的對象保存,。當(dāng)用戶再次打開該表時,,篩選不再起作用。如果用戶想在一個表中使用多個篩選或永久保存一個篩選,,必須將其作為一個查詢保存起來,。
⑷ 篩選的取消和刪除 用戶還可以取消和刪除篩選。單擊工具欄上的【取消篩選/排序】按鈕,。 若要完全刪除一個篩選,,就要通過【清除網(wǎng)格】、【應(yīng)用篩選】,、【關(guān)閉】,、【高級篩選/排序】等操作來完成。
七,、使用查閱向?qū)?/span>
在查看與另一個表鏈接的某個表時,,該表通常包含一個外鍵(一般是另一個表的主鍵)。在瀏覽被鏈接的表時,,外鍵字段通常是含義不明的,,除非把兩個表鏈接并通過查詢視圖查看數(shù)據(jù),否則不能明確該字段的實(shí)際值,。
例如,,在上圖表中,任課老師只有ID號,,而不知到底是誰,。 這需要修改字段的顯示特點(diǎn),,使它不顯示實(shí)際內(nèi)容,而顯示另一個表中的查找值(任課老師名),。下面通過實(shí)例說明: ◆ 打開班級表數(shù)據(jù)表視圖,,切換到設(shè)計(jì)視圖。 ◆ 選中【任課老師ID】字段的數(shù)據(jù)類型,,打開【查閱】選項(xiàng)卡,,可以看到當(dāng)前顯示的控件類型是文本框。打開【常規(guī)】選項(xiàng)卡,。
◆ 單擊【任課老師ID】字段數(shù)據(jù)類型的下三角按鈕顯示數(shù)據(jù)類型為“查閱向?qū)?#8221;,,它不是一種數(shù)據(jù)類型,而只是一種查閱方式而已,。 ◆ 系統(tǒng)開啟查閱向?qū)?/span>
◆ 向?qū)г儐?#8220;請選擇為查閱提供數(shù)值的表或查詢”,,我們選擇“teacher”
◆ 向?qū)э@示teacher的所有字段,選擇“任課老師ID”和“姓名”
◆ 進(jìn)入下一步,,設(shè)置順序
◆ 指定查問列中列的寬度
◆ 指定標(biāo)簽
◆ 顯示結(jié)果
八,、使用子數(shù)據(jù)表
有時在查看數(shù)據(jù)表中的信息時,用戶可能想同時看到們于不同表中的關(guān)系記錄,。Access 2003 具有查看數(shù)據(jù)表視圖中層次式的數(shù)據(jù)能力,。可以在表設(shè)計(jì)中手工建立子數(shù)據(jù)表,,或者讓數(shù)據(jù)庫根據(jù)表之間的關(guān)系自動確定子數(shù)據(jù)表,。子數(shù)據(jù)表的有關(guān)操作與主表類型似。
|
|