數(shù)據(jù)庫技術(shù)與應(yīng)用課后答案_第1頁
數(shù)據(jù)庫技術(shù)與應(yīng)用課后答案_第2頁
數(shù)據(jù)庫技術(shù)與應(yīng)用課后答案_第3頁
數(shù)據(jù)庫技術(shù)與應(yīng)用課后答案_第4頁
數(shù)據(jù)庫技術(shù)與應(yīng)用課后答案_第5頁
已閱讀5頁,還剩68頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、PAGE PAGE 73 附錄1章后習(xí)題參考答案與提示第1章 知識題 簡答題1)解答:Access是一個在關(guān)系型數(shù)據(jù)模型基礎(chǔ)上建立的數(shù)據(jù)庫管理系統(tǒng)軟件,具有組織數(shù)據(jù)、建立查詢、建立窗體、打印報表、共享數(shù)據(jù)、支持超級鏈接等基本功能。2)解答:表表是與特定主題(如產(chǎn)品或供應(yīng)商)有關(guān)的數(shù)據(jù)的集合。對每個主題使用一個單獨的表意味著用戶只需存儲該數(shù)據(jù)一次,這可以提高數(shù)據(jù)庫的效率,并減少數(shù)據(jù)輸入錯誤。查詢查詢是用來操作數(shù)據(jù)庫中的記錄的對象,利用它可以按照一定的條件或準(zhǔn)則從一個或多個表中篩選并顯示出用戶希望同時看到的數(shù)據(jù),用戶可以瀏覽、查詢、打印、修改所篩選出的表中的數(shù)據(jù)。窗體窗體是一種主要用于在數(shù)據(jù)庫中輸

2、入和顯示數(shù)據(jù)的數(shù)據(jù)庫對象。也可以將窗體用作切換面板來打開數(shù)據(jù)庫中的其他窗體和報表,或者用作自定義對話框來接受用戶的輸入及根據(jù)輸入執(zhí)行操作。報表報表是以打印格式展示數(shù)據(jù)的一種有效方式。因為能夠控制報表上所有對象的大小和外觀,所以可以按照所需的方式顯示要查看的信息。3)解答:數(shù)據(jù)庫是存儲在存儲設(shè)備中的、結(jié)構(gòu)化的關(guān)于某一特定主題或某一特定目的的相關(guān)數(shù)據(jù)的集合。它不僅包括描述事物的數(shù)據(jù)本身,而且包括相關(guān)事物之間的關(guān)系。4)解答:數(shù)據(jù)庫管理系統(tǒng)是對數(shù)據(jù)庫中的數(shù)據(jù)進行存儲、處理和管理的系統(tǒng),它提供了處理數(shù)據(jù)的手段,同時也提供了組織數(shù)據(jù)的方法。按照組織數(shù)據(jù)的方法,可以將數(shù)據(jù)庫管理系統(tǒng)分為3種,關(guān)系型數(shù)據(jù)庫管

3、理系統(tǒng)、層次型數(shù)據(jù)庫管理系統(tǒng)和網(wǎng)狀型數(shù)據(jù)庫管理系統(tǒng),其中關(guān)系型數(shù)據(jù)庫管理系統(tǒng)應(yīng)用最為廣泛。5)解答:數(shù)據(jù)庫設(shè)計需要先進行整體規(guī)劃,一般情況下,設(shè)計一個數(shù)據(jù)庫要經(jīng)過分析建立數(shù)據(jù)庫的目的、確定數(shù)據(jù)庫中需要的表、確定表中需要的字段、確定主關(guān)鍵字,以及確定表之間的關(guān)系5個步驟。 選擇題 單項選擇1)B2)C3)D4)A5)B6)B7)A8)C9)A10)A11)D12)B13)A14)D15)A16)B17)B18)D19)A20)A 多項選擇1)ABCD2)CD3)ABCD4)BCD5)BC6)BCD7)ABCD8)ABCD9)BCD10)ABCD 技術(shù)應(yīng)用1)解答:如果每個表只包含關(guān)于一個主題的信

4、息,那么就可以獨立于其他主題來維護每個主題的信息。2)解答:如果每條信息只保存在一個表中,則只需要在一處進行更新,這樣效率更高,同時也排除了包含不同信息的重復(fù)項的可能性。3)解答:這樣可以最大限度地減少數(shù)據(jù)庫的冗余,也可以避免在數(shù)據(jù)維護的過程中出現(xiàn)數(shù)據(jù)不一致的現(xiàn)象。4)解答:需在表中增加一個字段,該字段的值為序列號,以此來標(biāo)識不同的記錄。5)解答:在Access數(shù)據(jù)庫中,可以存在一個以上的表,如果不在表之間建立關(guān)系,這些表僅僅是互為獨立的,它們相當(dāng)于普通電子表格軟件中的表格。只有建立起表之間的關(guān)系,才能將表之間靜態(tài)的相關(guān)信息聯(lián)系在一起動態(tài)顯示。 技能題 單項操作訓(xùn)練1)操作提示:略。2)操作提

5、示:參照職業(yè)工作站中的操作進行。3)操作提示:觀察這個表中的內(nèi)容,在這個產(chǎn)品表中,車輛名稱、供應(yīng)商、類別字段都有重復(fù)的內(nèi)容,不可作為主關(guān)鍵字,其他字段除車輛代碼字段外,都是某輛汽車的具體數(shù)據(jù),也不可作為主關(guān)鍵字,只有車輛代碼是不重復(fù)的,可以作為主關(guān)鍵字。 綜合操作訓(xùn)練1)操作提示:參照汽車銷售公司銷售業(yè)務(wù)畫數(shù)據(jù)流程圖。2)操作提示:參照“汽車銷售”數(shù)據(jù)庫功能模塊圖畫業(yè)務(wù)數(shù)據(jù)流程圖。3)操作提示:查看訂單銷售表中的內(nèi)容,可以發(fā)現(xiàn)訂單銷售表中含有訂單、雇員、產(chǎn)品、客戶等多方面的信息。雖然這些信息都是訂單中所需要的內(nèi)容,但把這些不同的信息放在一個表中,明顯不符合每個表應(yīng)該只包含關(guān)于一個主題信息的原則

6、。應(yīng)該對這個表進行分拆。4)操作提示:查看圖125銷售訂單表中的內(nèi)容,明顯不符合表中不應(yīng)該包含重復(fù)信息,并且信息不應(yīng)該在表之間復(fù)制的原則。由于存在產(chǎn)品ID、雇員ID字段,所以車名、名字這兩個字段屬于多余的復(fù)制信息,應(yīng)該刪除。再看表中的內(nèi)容,由于每張訂單有多筆業(yè)務(wù),所以也存在著許多復(fù)制的信息。應(yīng)該將該表拆成兩個表并在每個表中設(shè)置訂單ID字段,以訂單ID字段為關(guān)鍵字建立兩個表之間的關(guān)系。5)操作提示:仔細觀察圖126,可以發(fā)現(xiàn)表中代碼車名字段中包含了汽車代碼和車名2個內(nèi)容,不符合“以最小的邏輯部分作為字段來保存信息。確定的每個字段應(yīng)該是最小的、不可再分的”的要求,所以該表設(shè)置是不合理的。可以將代碼

7、車名字段分拆成汽車代碼和車名2個字段,使表中字段的設(shè)置符合要求。 案例題案例1分析提示:因為這些同學(xué)對數(shù)據(jù)庫知識了解不多,使用Access非常容易上手,且遙控航模愛好者人數(shù)不是很多,網(wǎng)站的安全性要求也不是很高,所以選擇Access做后臺數(shù)據(jù)庫是比較好的選擇。當(dāng)網(wǎng)站注冊人數(shù)多了之后,Access的效率開始下降,所以網(wǎng)站的速度開始變慢。由于網(wǎng)站的速度開始變慢主要是因為注冊人數(shù)多了,Access效率降低引起的,所以當(dāng)網(wǎng)站升級改造時,需要更換后臺數(shù)據(jù)庫,可以考慮將Access數(shù)據(jù)庫換成SQL Server數(shù)據(jù)庫。案例2分析提示:這位數(shù)據(jù)庫開發(fā)人員所遇到的困境在實際的開發(fā)工作中經(jīng)常遇到。由于開發(fā)人員本身

8、的因素和客戶對目標(biāo)應(yīng)用不太了解,以及對現(xiàn)有系統(tǒng)的描述不夠精確,造成開發(fā)者和最終用戶之間對目標(biāo)系統(tǒng)所應(yīng)具有的功能在理解上出現(xiàn)不一致,以致最終完成的系統(tǒng)不能滿足使用要求。如果這時修修補補,勉強維持應(yīng)用系統(tǒng)的運行,最終將會大大縮短這個系統(tǒng)的使用時間,如果推倒重來,軟件開發(fā)者將付出極高的成本。要想在系統(tǒng)開發(fā)的過程中避免這種情況的發(fā)生,只有依靠系統(tǒng)開發(fā)前嚴(yán)密細致的調(diào)研和與用戶的充分溝通。開發(fā)人員不但要使所設(shè)計的目標(biāo)系統(tǒng)能處理現(xiàn)有系統(tǒng)的所有常規(guī)事務(wù),還要能夠處理現(xiàn)有系統(tǒng)的一些偶發(fā)事件,最好還要考慮使目標(biāo)系統(tǒng)能更好地發(fā)揮計算機的優(yōu)勢,增加一些在手工狀態(tài)下做不到,在計算機系統(tǒng)中卻可以做到的功能,并與客戶一起充

9、分討論目標(biāo)系統(tǒng)的功能需求。簡而言之,這位數(shù)據(jù)庫開發(fā)人員所遇到的困境就是因為系統(tǒng)調(diào)研不充分所引起的。他們的團隊?wèi)?yīng)該牢牢記住,再簡單的系統(tǒng),在開發(fā)之前,也一定要做好系統(tǒng)調(diào)研分析工作,只有這樣才能開發(fā)出用戶滿意的應(yīng)用系統(tǒng),少走彎路,免受經(jīng)濟損失。 實訓(xùn)題教學(xué)建議:建議在做實訓(xùn)之前先讓學(xué)生真正掌握“汽車銷售”數(shù)據(jù)庫的開發(fā)過程,了解“羅斯文”數(shù)據(jù)庫。由學(xué)生自己規(guī)劃設(shè)計數(shù)據(jù)庫應(yīng)用系統(tǒng),意在讓學(xué)生通過一個真實的應(yīng)用項目,掌握所學(xué)的知識,提高實際的動手能力和培養(yǎng)學(xué)生解決實際問題的能力。在實訓(xùn)過程中教師要把精力放在指導(dǎo)學(xué)生如何進行系統(tǒng)調(diào)研上面,因為這是今后在實際工作中開發(fā)一個數(shù)據(jù)庫應(yīng)用系統(tǒng)最為困難的工作,當(dāng)學(xué)生

10、通過調(diào)研得到了企業(yè)的需求資料之后,要注意充分發(fā)揮學(xué)生對一個已有系統(tǒng)加以改進的創(chuàng)造力和想象力,學(xué)生無論設(shè)計出什么樣的數(shù)據(jù)庫系統(tǒng),只要沒有邏輯錯誤,教師都應(yīng)該給以肯定。如果由于條件的限制,學(xué)生無法到企業(yè)進行數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)實訓(xùn),教師可以組織他們開發(fā)學(xué)校的圖書館、教務(wù)管理等數(shù)據(jù)庫應(yīng)用系統(tǒng)。 討論題1)討論建議:可以從Access數(shù)據(jù)不能有太多的數(shù)據(jù)、學(xué)習(xí)難度較低、適合小企業(yè)等多個角度展開討論。2)討論建議:“羅斯文”數(shù)據(jù)庫如果所有訂單只能處理一筆業(yè)務(wù),對訂單表的結(jié)構(gòu)設(shè)計會有影響,現(xiàn)有的訂單分別保存在訂單和訂單明細兩個表中,主要就是因為如果每張訂單有多筆業(yè)務(wù),如果將數(shù)據(jù)保存在一個表中,就會使客戶資

11、料、訂購日期等許多內(nèi)容產(chǎn)生冗余。基于上述原因,“羅斯文”數(shù)據(jù)庫如果所有訂單只能處理一筆業(yè)務(wù),可以修改表的結(jié)構(gòu),也可以不修改表的結(jié)構(gòu)。如果修改表結(jié)構(gòu),可將訂單表和訂單明細表合并為一個訂單表。如果不修改表結(jié)構(gòu),會有一點數(shù)據(jù)冗余。3)討論建議:可以從如果不進行詳細的系統(tǒng)調(diào)研,開發(fā)者和最終用戶之間對目標(biāo)系統(tǒng)所應(yīng)具有的功能在理解上就可能出現(xiàn)不一致,以致最終完成的系統(tǒng)不能滿足使用要求這個角度展開討論。通過討論要使同學(xué)們牢牢記住,再簡單的系統(tǒng),在開發(fā)之前,也一定要做好系統(tǒng)調(diào)研分析工作,只有這樣才能開發(fā)出用戶滿意的應(yīng)用系統(tǒng),少走彎路,免受經(jīng)濟損失。第2章 知識題 簡答題1)解答:以只讀方式打開打開的數(shù)據(jù)庫只能

12、查看不能編輯,可避免誤操作對該數(shù)據(jù)庫造成的破壞。以 HYPERLINK mk:MSITStore:C:Program%20FilesMicrosoft%20OfficeOFFICE112052acmain11.chm:/html/achowOpenExistingDatabaseS.htm l # 獨占方式打開禁止他人打開該數(shù)據(jù)庫,可避免網(wǎng)絡(luò)中的其他用戶同時訪問及修改該數(shù)據(jù)庫。以獨占只讀方式打開禁止他人打開該數(shù)據(jù)庫,打開的數(shù)據(jù)庫只能查看不能編輯。2)解答:創(chuàng)建表有3種方法,使用表向?qū)?chuàng)建表、使用數(shù)據(jù)表視圖創(chuàng)建表、在設(shè)計視圖中創(chuàng)建表。這些方法各有優(yōu)點和缺點,使用表向?qū)?chuàng)建表可以借鑒使用系統(tǒng)提供的

13、樣表快速建立表,但實際所要創(chuàng)建的系統(tǒng)中基本沒有與樣表相同的表,人們一般不太喜歡使用這種方法。使用數(shù)據(jù)表視圖創(chuàng)建表,快速方便,但只能使用默認的字段屬性,也難受到人們的歡迎。在設(shè)計視圖中創(chuàng)建表,相對比較麻煩,但卻為建表者提供了最大的自由度,建表者可以按照自己的需要,為表設(shè)置字段屬性,設(shè)計符合要求的表,是人們最為常用的建表方法。3)解答:數(shù)據(jù)類型有文本、備注、數(shù)字、日期/時間、貨幣、自動編號、是/否、OLE 對象、超鏈接、查閱向?qū)А?)解答:在Microsoft Access 數(shù)據(jù)庫中為每個主題都設(shè)置了不同的表,建立表間關(guān)系可以將分布于不同表中的數(shù)據(jù)作為一個整體來使用,使分散在幾個表中有關(guān)聯(lián)的數(shù)據(jù)能

14、夠聯(lián)系在一起進行同步處理。5)解答:參照完整性是一個規(guī)則系統(tǒng),設(shè)置參照完整性之后,Microsoft Access 使用這個系統(tǒng)來確保相關(guān)表中記錄之間關(guān)系的有效性,并且不會意外地刪除或更改相關(guān)數(shù)據(jù)。 選擇題 單項選擇1)B2)C3)A4)B5)C6)D7)C8)A9)B10)D11)A12)D13)C14)A15)C16)D17)C18)C19)D20)A21)B22)B23)B24)D25)C26)B27)B28)A29)C30)D 多項選擇1)ABCD2)ACD3)ABCD4)BD5)ABC6)ABD7)ABCD8)AB9)ABC10)ABC 技術(shù)應(yīng)用1)解答:較簡單的方法是采用復(fù)制/粘貼

15、的方法將圖片輸入到數(shù)據(jù)表中。例如,要在“雇員”表中輸入雇員照片可以先在資源管理器中找到要輸入的照片,選中并復(fù)制,然后打開“雇員”表的數(shù)據(jù)表視圖,選擇要輸入的記錄中的照片字段單擊右鍵,在快捷菜單中選擇粘貼命令完成照片的輸入。2)解答:不適合。如果用自動編號數(shù)據(jù)類型作為代碼字段,使用者無法控制代碼的順序,因為自動編號數(shù)據(jù)類型中包含的代碼一旦被刪除,就再也不能簡單地添加進去。3)解答:不能在相關(guān)表的外部鍵字段中輸入不存在于主表的主鍵中的值。但是,可以在外部鍵中輸入一個 Null 值來指定這些記錄之間并沒有關(guān)系。如果在相關(guān)表中存在匹配的記錄,不能從主表中刪除這個記錄。如果某個記錄有相關(guān)的記錄,則不能在

16、主表中更改主鍵值。4)解答:索引有助于 Microsoft Access 快速查找和排序記錄。表的主鍵將自動設(shè)置索引,而對 OLE 對象數(shù)據(jù)類型的字段則不能設(shè)置索引。對于其他字段,如果符合下列所有條件,則可以考慮對字段設(shè)置索引。 字段的數(shù)據(jù)類型為“文本”、“數(shù)字”、“貨幣”或“日期/時間”。 準(zhǔn)備搜索字段中保存的值。 準(zhǔn)備對字段中的值進行排序。5)解答:保存對表的更改時,Microsoft Access 將提示檢查是否全部已有記錄的該字段中都具有值。但是,也可以只要求所有新記錄的該字段必須具有輸入值,而不管不再更改的字段中的已有記錄是否為 Null(空)值。 技能題 單項操作訓(xùn)練1)解答:參考

17、【例22】。2)解答:參考【例23】、【例24】、【例25】。3)解答:備注及輸入可以打開類別.txt然后一條一條記錄復(fù)制、粘貼。圖片可以先在資源管理器中找到要輸入的照片選中并復(fù)制,然后在類別表的數(shù)據(jù)表視圖選擇要輸入的記錄中的照片字段單擊右鍵,在快捷菜單中選擇粘貼命令完成照片的輸入。4)解答:在表設(shè)計視圖中修改。5)解答:在表設(shè)計視圖中修改。6)解答:略。 綜合操作訓(xùn)練1)解答:參考【例27】。2)解答:參考【例27】,在選擇文件類型時選Microsoft Excel (*.xls)。3)解答:參考【例27】,在選擇文件類型時選Microsoft Excel (*.xls)。4)解答:參考【例

18、27】。5)解答:參考【例27】,在選擇文件類型時選Microsoft Office Access。6)解答:在建立或編輯關(guān)系時,選擇“實施參照完整性”與“級聯(lián)更新相關(guān)字段”選項就可完成任務(wù)。7)解答:建立“客戶”表與“訂單”表之間以“客戶ID”字段連接的一對多關(guān)系,在建立或編輯關(guān)系時,選擇“實施參照完整性”、“級聯(lián)更新相關(guān)字段”及“級聯(lián)刪除相關(guān)記錄”選項就可完成任務(wù)。8)解答:建立“訂單”表與“訂單明細”表之間以“訂單ID”字段連接的一對多關(guān)系,在建立或編輯關(guān)系時,選擇“實施參照完整性”、“級聯(lián)更新相關(guān)字段” 及“級聯(lián)刪除相關(guān)記錄”選項就可完成任務(wù)。9)解答:略。10)解答:略。11)解答:

19、略。 案例題案例1分析提示:隨著計算機應(yīng)用的日益普及,各種應(yīng)用系統(tǒng)間的數(shù)據(jù)共享需要越來越多。Access數(shù)據(jù)庫應(yīng)用系統(tǒng)可以直接導(dǎo)入部分系統(tǒng)(如Excel電子表格、Foxpro數(shù)據(jù)庫等系統(tǒng))的數(shù)據(jù),但是不可能直接導(dǎo)入任何系統(tǒng)中的數(shù)據(jù),也沒有一種數(shù)據(jù)庫系統(tǒng)能夠做到這一點。但是幾乎所有的應(yīng)用系統(tǒng)都可以輸出文本文件。因此,在此前提下,可以認為Access數(shù)據(jù)庫應(yīng)用系統(tǒng)能使用任何應(yīng)用軟件中的數(shù)據(jù)。案例2分析提示:這位統(tǒng)計員所遇到的問題可能是由于所用的多個表之間沒有設(shè)置表間關(guān)系,或雖然設(shè)置了表間關(guān)系,但沒有設(shè)置“實施參照完整性”及其下面的選項所造成的。創(chuàng)建表間關(guān)系,可以將分散在幾個表中有關(guān)聯(lián)的數(shù)據(jù)聯(lián)系在一

20、起進行同步處理,這是一種在數(shù)據(jù)庫中使用的關(guān)鍵技術(shù)之一。在創(chuàng)建表間關(guān)系的過程中會出現(xiàn)“實施參照完整性”的選擇,在數(shù)據(jù)庫的使用過程中,這是一個非常重要的選項。因為對于數(shù)據(jù)庫中有關(guān)聯(lián)的多個數(shù)據(jù)表而言,當(dāng)修改其中任意一個數(shù)據(jù)表中的數(shù)據(jù)時,可能會影響到它們之間的關(guān)系。使用參照完整性這個規(guī)則之后,Microsoft Access將使用這個規(guī)則來確保相關(guān)表中記錄之間關(guān)系的有效性,并且不會意外地刪除或更改相關(guān)數(shù)據(jù)。在選擇了“實施參照完整性”選項后,還應(yīng)使用“級聯(lián)更新相關(guān)字段”及“級聯(lián)刪除相關(guān)記錄”選項,這樣可以保證多個表中的記錄得到同步的更新與刪除,大大減少數(shù)據(jù)庫維護的工作量。這位統(tǒng)計員就是重新設(shè)置或編輯了表

21、間關(guān)系來解決所遇到的問題的。 實訓(xùn)題教學(xué)建議:在“汽車銷售”數(shù)據(jù)庫中完整建立第1章所設(shè)計的表,并設(shè)置正確的字段屬性,設(shè)置表間關(guān)系是后續(xù)章節(jié)所有例題和習(xí)題的基礎(chǔ),必須保質(zhì)保量地完成。本實訓(xùn)的目的就是要將例題和習(xí)題中沒有要求創(chuàng)建的或創(chuàng)建不完整的表全部創(chuàng)建完成,為后續(xù)的學(xué)習(xí)奠定基礎(chǔ)。教師在實訓(xùn)的過程中要督促學(xué)生盡力完成實訓(xùn),對一些學(xué)有余力的學(xué)生可以讓他們?yōu)樵诘?章實訓(xùn)中所創(chuàng)建的數(shù)據(jù)庫應(yīng)用系統(tǒng)創(chuàng)建完整的表。培養(yǎng)學(xué)生解決實際問題的能力。 討論題1)討論建議:此討論題本身沒有太大的難度,但在組織學(xué)生進行討論的過程中,千萬不能就回答一個結(jié)論就結(jié)束了。要通過討論讓學(xué)生對創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表的多種方法有一個全面深

22、刻的了解,明白在什么情況下使用哪種方法創(chuàng)建庫、表最方便快捷。2)討論建議:可以讓學(xué)生通過在計算機上試驗得出討論結(jié)果。使用“格式”屬性可按統(tǒng)一的格式顯示數(shù)據(jù)。“格式”屬性只影響值的顯示方式,而不影響在表中值的存儲方式。而且顯示格式只有在輸入的數(shù)據(jù)被保存后才應(yīng)用,而在字段中不會顯示任何信息以建議或控制數(shù)據(jù)的輸入格式。如果要讓數(shù)據(jù)按輸入時的格式顯示,則不要設(shè)置“格式”屬性。如果需要控制數(shù)據(jù)的輸入格式,可附加使用輸入掩碼或用其代替數(shù)據(jù)顯示格式。輸入掩碼可以確保數(shù)據(jù)符合定義格式,可以指定輸入的值的類型。如果同時定義了字段的顯示格式和輸入掩碼,則在添加或編輯數(shù)據(jù)時,Microsoft Access 將使用

23、輸入掩碼,而“格式”設(shè)置則在保存記錄時決定數(shù)據(jù)的顯示方式。同時,使用“格式”和“輸入掩碼”屬性時,要注意它們的結(jié)果不能沖突。3)討論建議:此討論題并不是要求學(xué)生全面了解Access可以導(dǎo)入、導(dǎo)出哪些數(shù)據(jù)庫對象,而是希望通過此題拓寬學(xué)生的視野,使學(xué)生知道除了數(shù)據(jù)表之外,還有很多對象可以導(dǎo)入、導(dǎo)出,這是目前許多軟件都具有的功能。可以要求學(xué)生嘗試對不同對象進行導(dǎo)入、導(dǎo)出的試驗,并在試驗中接觸其他系統(tǒng),在其他系統(tǒng)中導(dǎo)出可以為Access所用的對象。第3章 知識題 簡答題1)解答:表是用來存放數(shù)據(jù)的場所,是數(shù)據(jù)源之所在,而查詢是針對數(shù)據(jù)源的操作命令的集合,相當(dāng)于程序。2)解答:查詢的類型分為選擇查詢、動

24、作查詢和SQL查詢3種。選擇查詢又分為簡單選擇查詢、參數(shù)查詢和交叉表查詢。動作查詢又分為更新查詢、追加查詢、刪除查詢和生成表查詢。SQL查詢又分為聯(lián)合查詢、傳遞查詢、數(shù)據(jù)定義查詢和子查詢。3)解答:總計選項共12項,分為4大類:分組依據(jù)(分組)、總計函數(shù)(共9個)、表達式和總計字段記錄限制(條件)。分組用來指定分組字段;表達式用來設(shè)置計算字段;條件用來設(shè)置對分組匯總的記錄進行限制。其他9個總計函數(shù)每個都是一種計算,意義分別如下所述。總計為每一組中指定的字段進行求和運算。平均值為每一組中指定的字段進行求平均值運算。最小值/最大值為每一組中指定的字段進行求最小/大值運算。計數(shù)根據(jù)指定的字段計算每一

25、組中記錄的個數(shù),但不包括Null值即空值。標(biāo)準(zhǔn)差/方差根據(jù)指定的字段計算每一組的統(tǒng)計標(biāo)準(zhǔn)差/方差。第一條記錄根據(jù)指定的字段獲取每一組中第一條記錄中該字段的值。最后一條記錄根據(jù)指定的字段獲取每一組中最后一條記錄中該字段的值。4)解答:Access查詢的實質(zhì)就是一條SQL語句。在Access中,建立查詢的操作,實際上是生成SQL語句的過程。5)解答:所謂表達式,就是用運算符將常量、標(biāo)識符、函數(shù)等連接起來的式子,一般情況下,它返回一個確定的值。其中常量是指不會改變的數(shù)值或字符串值;標(biāo)識符用來表示一個對象或一個對象的屬性;函數(shù)是一個小程序,它根據(jù)參數(shù)來進行一定的計算、比較或判斷,然后返回一個值。 選擇

26、題 單項選擇1)A2)A3)B4)B5)C6)D7)C8)A9)C10)C11)B12)A13)B14)B15)B16)B17)C18)B19)D20)D 多項選擇1)AB2)ABD3)ABC4)AB5)ABC6)ABCD7)ABC8)ABD9)ACD10)ABD 技術(shù)應(yīng)用1)解答:可在查詢屬性和工具欄中設(shè)置。2)解答:在“參數(shù)”對話框中的“參數(shù)”列中調(diào)整上下次序。3)解答:在“行標(biāo)題”中設(shè)定準(zhǔn)則用于對記錄組執(zhí)行計算之前要限定分組記錄的范圍,只對符合條件的記錄進行合計計算。即查詢先對記錄進行分組,然后只對符合準(zhǔn)則條件的記錄組進行計算。Where準(zhǔn)則字段用于在記錄分組前和計算執(zhí)行前限定執(zhí)行計算的

27、記錄的范圍,即查詢先根據(jù)準(zhǔn)則字段選取符合條件的記錄來進行分組,然后進行計算。4)解答:不能直接刪除“產(chǎn)品”表中的數(shù)據(jù),因為它是處于對于已經(jīng)建立了關(guān)系的表,除非將其所有與之相關(guān)的關(guān)系都使用“級聯(lián)刪除相關(guān)記錄”,這樣才能進行刪除。要注意的是,建立級聯(lián)刪除以后,刪除一方關(guān)系表的記錄時,Access會自動刪除級聯(lián)表的相關(guān)記錄。5)解答:當(dāng)用戶需要為查詢結(jié)果中的字段進行改名顯示時,有兩種辦法:在設(shè)計視圖中對應(yīng)的“字段:”單元格單擊右鍵,選擇“屬性”,在字段屬性對話框中的“標(biāo)題”文本框中輸入新的字段名;或者將插入點放在設(shè)計網(wǎng)格中字段名的第一個字母左邊,鍵入“新名稱:”即可。 技能題 單項操作訓(xùn)練1)操作提

28、示:只需使用查詢向?qū)Ъ纯伞?)操作提示:設(shè)定“客戶ID”字段的限制“條件:”為AAAAA Or Is Null。3)操作提示:“訂單ID”字段以“升序”排序;“總價”字段為計算字段,其表達式為:CCur(訂單明細.銷售價*數(shù)量*(1-折扣)/100) *100。4)操作提示:該查詢?yōu)楹嫌嫴樵儭J紫劝凑铡邦悇eID”、“類別名稱”和“車名”的順序依次分組,然后再對“擴展訂單明細”中的“總價”字段進行求和運算,并將該字段重命名為“產(chǎn)品銷售額”。5)操作提示: SELECT 雇員.名字,Sum(銷售價*數(shù)量) AS 銷售金額FROM 雇員 INNER JOIN (訂單 INNER JOIN 訂單明細

29、ON 訂單.訂單ID=訂單明細.訂單ID) ON 雇員.雇員ID=訂單.雇員IDGROUP BY 雇員.名字; 綜合操作訓(xùn)練1)操作提示:可參考羅斯文數(shù)據(jù)庫中的“各種產(chǎn)品的季度訂單”查詢創(chuàng)建。該查詢是參數(shù)查詢和交叉表查詢相結(jié)合的查詢。數(shù)據(jù)源來自于“訂單”表、“訂單明細”表和“產(chǎn)品”表。“車輛名稱”、“客戶”和“訂購年份”字段為行標(biāo)題字段,其中“訂購年份”為計算字段,其表達式為“Year(訂購日期)”。列標(biāo)題字段為計算字段,其表達式為“第 & DatePart(q,訂購日期,1,0) & 季度”。值字段也為計算字段,表達式為“Sum(CCur(訂單明細.銷售價*數(shù)量*(1-折扣)/100)*10

30、0)”。用來作為參數(shù)的年份字段也是計算所得。表達式為“Year(訂購日期)”。該查詢的設(shè)計視圖如圖解答31所示。圖解答31 “各種產(chǎn)品的季度訂單”查詢設(shè)計視圖2)操作提示:可參考羅斯文數(shù)據(jù)庫中的“各產(chǎn)品季度銷售額”查詢創(chuàng)建。該查詢是參數(shù)查詢和合計查詢相結(jié)合的查詢。數(shù)據(jù)源來自于“類別”表、“產(chǎn)品”表、“訂單”表和“訂單明細”表。用于分組的字段依次為“類別名稱”、“車輛名稱”和“發(fā)貨季度”,其中“發(fā)貨季度”是計算字段,表達式為“Qtr & DatePart(q,發(fā)貨日期)”。“產(chǎn)品銷售額”是表達式字段,其計算表達式為:Sum(CCur(訂單明細.銷售價*數(shù)量*(1-折扣)/100)*100)。參數(shù)

31、字段為計算字段,表達式為“Year(發(fā)貨日期)”。該查詢設(shè)計視圖如圖解答32所示。圖解答32 “各產(chǎn)品季度銷售額”查詢設(shè)計視圖 案例題案例1分析提示:由于查詢可從多個表或查詢中提取相關(guān)數(shù)據(jù),然后能按照不同方式進行查看、更改和計算數(shù)據(jù),故能取得很好的效果。案例2分析提示:可創(chuàng)建對應(yīng)的參數(shù)查詢,根據(jù)用戶輸入的時間段來自動進行統(tǒng)計工作。 實訓(xùn)題教學(xué)建議:建議在做實訓(xùn)之前先讓學(xué)生瀏覽并參考“羅斯文”數(shù)據(jù)庫的相關(guān)查詢。首先引導(dǎo)學(xué)生根據(jù)查詢結(jié)果分析查詢的類型和功能,確定用什么方法創(chuàng)建查詢。然后確定查詢的數(shù)據(jù)源和字段來源,哪些為現(xiàn)有字段,哪些為計算字段。如果為計算字段,還需確定對應(yīng)的表達式。由學(xué)生自己設(shè)計并

32、創(chuàng)建查詢,意在讓學(xué)生學(xué)會根據(jù)系統(tǒng)的功能和特點,從實用角度出發(fā),分析用戶的各種可能的需求,依次來創(chuàng)建查詢。培養(yǎng)學(xué)生獨立發(fā)現(xiàn)問題和解決問題的能力。教師可幫助學(xué)生進行一些需求分析工作,并在學(xué)生遇到困難時予以適當(dāng)?shù)闹笇?dǎo)。同時在評價學(xué)生作品時建議以實用性和現(xiàn)實性為主要標(biāo)準(zhǔn)。 討論題1)討論建議:從表和查詢的區(qū)別,以及篩選和查詢所基于的數(shù)據(jù)源的不同來進行討論。2)討論建議:鼓勵學(xué)生對每種動作查詢都進行重復(fù)操作,仔細觀察結(jié)果,得出結(jié)論。然后引導(dǎo)學(xué)生從各動作查詢的操作特點和表字段的屬性特點來分析原因。3)討論建議:鼓勵學(xué)生盡可能多地提出各種情況,然后得出結(jié)論。4)討論建議:鼓勵學(xué)生嘗試取消分組、查看結(jié)果操作的

33、區(qū)別。還可嘗試對其他類似查詢進行這項操作,由學(xué)生自己總結(jié)結(jié)論。5)討論建議:建議先讓學(xué)生在瀏覽汽車銷售系統(tǒng)的各查詢的基礎(chǔ)上,獨立進行歸納總結(jié),鼓勵學(xué)生以小組的形式進行熱烈討論。老師在各組討論期間予以適當(dāng)?shù)囊龑?dǎo),然后每組選出代表進行總結(jié)發(fā)言,最后再由老師在對各組的討論結(jié)果和表現(xiàn)進行分析和評價的基礎(chǔ)上,進行最后歸納總結(jié)。第4章 知識題 簡答題1)解答:窗體是Access數(shù)據(jù)庫對象之一,是數(shù)據(jù)庫與Access應(yīng)用程序的接口,窗體有多種形式,不同的窗體完成不同的功能。利用窗體,用戶可以方便地錄入、修改、查詢數(shù)據(jù)庫中的記錄。2)解答:窗體中的所有信息都包含在控件中。控件在窗體中用于顯示數(shù)據(jù)、執(zhí)行操作或裝

34、飾窗體。3)解答:控件可以是綁定、未綁定或計算型的。綁定控件與基礎(chǔ)表或 HYPERLINK javascript:HelpPopup(actip9.hlp,defQuery); 查詢中的字段相連,可用于顯示、輸入及更新數(shù)據(jù)庫中的字段。而未綁定控件則沒有數(shù)據(jù)來源。未綁定控件可用于顯示信息、線條、矩形及圖像。4)解答:控件屬性決定控件的結(jié)構(gòu)、外觀和行為,包括它所包含的文本或數(shù)據(jù)的特性。5)解答:事件是一種特定的操作,在某個對象上發(fā)生或?qū)δ硞€對象發(fā)生。Access 可以響應(yīng)多種類型的事件,如鼠標(biāo)單擊、數(shù)據(jù)更改、窗體打開或關(guān)閉及許多其他類型的事件。事件的發(fā)生通常是用戶操作的結(jié)果。 選擇題 單項選擇1)

35、C2)C3)C4)D5)C6)D7)B8)C9)B10)B11)C12)A13)B14)C15)B16)A17)D18)D19)A20)D 多項選擇1)BCD2)BCD3)ABD4)ABD5)ABCD6)BCD7)BD8)ACD9)ABD10)AB 技術(shù)應(yīng)用1)解答:創(chuàng)建主/子窗體。2)解答:可以在主窗體上創(chuàng)建文本框,使用表達式來引用子窗體上包含計算值的控件。具體方法是在主窗體的文本框的“控件來源”屬性框中指定表達式:=子窗體名稱.form!子窗體計算文本框名稱。3)解答:只需更改窗體的“記錄源”屬性值為所需要的數(shù)據(jù)源。4)解答:控件的“標(biāo)題”是在窗體屏幕上顯示的文字信息,控件的“名字”是控件

36、在窗體中被其他控件引用的表示標(biāo)識。5)解答:沒有影響。有影響的是數(shù)據(jù)源之間所建立的關(guān)系。 技能題 單項操作訓(xùn)練1)操作提示:可利用自動窗體創(chuàng)建。2)操作提示:可利用窗體向?qū)?chuàng)建。 綜合操作訓(xùn)練1)操作提示:本練習(xí)的關(guān)鍵之處是要求輸入一個客戶代碼后,能夠使“客戶”表定位到所選的客戶記錄之上,需要一個輸入客戶代碼文本框的“更新后”事件過程。假設(shè)你設(shè)置的文本框名字為“輸入客戶代碼查詢”,則該文本框的“更新后”事件過程代碼如下:Private Sub 輸入客戶代碼查詢_AfterUpdate()Me!客戶ID.SetFocus在客戶ID中查找輸入代碼DoCmd.FindRecord Me!輸入客戶代碼

37、查詢,True,TrueIf Me!輸入客戶代碼查詢 Me!客戶ID ThenMsgBox (找不到該客戶)End IfMe!輸入客戶代碼查詢.SetFocusEnd Sub2)操作提示:該題應(yīng)先創(chuàng)建一個無數(shù)據(jù)源的窗體,然后添加各種對象。命令按鈕中的操作都是從向?qū)е羞x取的。3)操作提示:這是一個與“訂單”窗體功能十分相似的窗體。主要差別是不需要搜集客戶信息,并添加了幾個按鈕。要求1圖448所示的“零售訂單”窗體中涉及多個表,但只含有一個主窗體和一個子窗體,如果直接使用表作為數(shù)據(jù)源,每使用一個表就需建立一個子窗體,因此需要建立“零售訂單查詢”及“擴展訂單明細”兩個查詢作為數(shù)據(jù)源。“零售訂單查詢”

38、查詢設(shè)計視圖如圖解答41所示,并用窗體向?qū)Э焖賱?chuàng)建一個帶子窗體的主窗體。之后修改這個窗體最后完成任務(wù)。圖解答41 “零售訂單查詢”查詢設(shè)計視圖要求2可通過創(chuàng)建組合框完成。要求3可以通過在“訂購日期”文本框中設(shè)置默認值屬性為DATE()完成。要求4可用在子窗體中計算總計值并在主窗體上顯示該總計值實現(xiàn)。要求5本功能需要設(shè)置兩個事件。(1)首先在主窗體中定義變量SHY,代碼如下:Option Compare Database使用數(shù)據(jù)庫次序進行字符串比較。Option Explicit使用變量之前要先聲明。Dim shy As String定義 shy 記錄雇員ID(2)為主窗體設(shè)置一個加載事件,事件

39、過程代碼如下:Private Sub Form_Load()If IsNull(Me!客戶ID) Or Me!客戶ID = ThenMe!客戶ID = AAAAAEnd IfIf IsNull(Me!雇員ID) Or Me!雇員ID = ThenMe!雇員ID = 1End Ifshy = Me!雇員IDEnd Sub(3)為“雇員ID”組合框設(shè)置一個失去焦點事件,事件過程代碼如下:Private Sub 雇員ID_LostFocus()If IsNull(Me!雇員ID) Or Me!雇員ID = ThenMe.雇員ID = shyEnd Ifshy = Me!雇員IDEnd Sub要求6本

40、功能需要設(shè)置四個事件。(1)首先在子窗體中定義變量CHL,代碼如下:Option Explicit使用變量之前要先聲明。 Dim chl As Integer,shy As String(2)為“產(chǎn)品ID”設(shè)置一個更新后事件,事件過程代碼如下:Private Sub 產(chǎn)品ID_AfterUpdate()On Error GoTo Err_ProductID_AfterUpdateDim strFilter As String在傳給 DLookup 函數(shù)之前給篩選字符串賦值。strFilter = 產(chǎn)品ID = & Me!產(chǎn)品ID查找產(chǎn)品的單價并將它賦給“單價”控件。Me!銷售價 = DLook

41、up(銷售價, 產(chǎn)品,strFilter)chl = Me.數(shù)量Exit_ProductID_AfterUpdate:Exit SubErr_ProductID_AfterUpdate:MsgBox Err.DescriptionResume Exit_ProductID_AfterUpdateEnd Sub(3)為“數(shù)量”設(shè)置一個更新后事件,事件過程代碼如下:Private Sub _AfterUpdate()Me!庫存量 = Me!庫存量 - Me!數(shù)量 + chlMe.RefreshEnd Sub(4)為“數(shù)量”設(shè)置一個進入事件,事件過程代碼如下:Private Sub 數(shù)量_Enter

42、()If IsNull(Me!數(shù)量) Thenchl = 0Elsechl = Me!數(shù)量End IfEnd Sub(5)為“數(shù)量”設(shè)置一個獲得焦點事件,事件過程代碼如下:Private Sub 數(shù)量_GotFocus()chl = Me!數(shù)量End Sub要求7為“開票”設(shè)置一個單擊事件,事件過程代碼如下:Private Sub 命令96_Click()Me.到貨日期 = Me.訂購日期Me.發(fā)貨日期 = Me.訂購日期Me.付款 = TrueEnd Sub要求8為“輸入新單”設(shè)置一個單擊事件,事件過程代碼如下:Private Sub 命令93_Click()On Error GoTo Er

43、r_命令93_ClickDoCmd.GoToRecord,acNewRecMe.客戶ID = AAAAAIf IsNull(Me!雇員ID) Or Me!雇員ID = ThenMe.雇員ID = shyEnd Ifshy = Me!雇員IDExit_命令93_Click:Exit SubErr_命令93_Click:MsgBox Err.Description Resume Exit_命令93_ClickEnd Sub要求9先假定所用到的報表都是存在的,這里先給出代碼,可先不添加“打印發(fā)票”和“預(yù)覽發(fā)票”按鈕,待學(xué)完報表再完成此任務(wù)。(1)為“打印發(fā)票”設(shè)置一個單擊事件,事件過程代碼如下:Su

44、b 打印發(fā)貨單_Click()這段代碼由“命令按鈕向?qū)А眲?chuàng)建。On Error GoTo Err_PrintInvoice_ClickDim strDocName As StringstrDocName = 零售發(fā)票打印“發(fā)貨單”報表,使用“發(fā)貨單篩選”查詢打印當(dāng)前訂單的發(fā)貨單。DoCmd.OpenReport strDocName,acViewNormal, 零售發(fā)票篩選Exit_PrintInvoice_Click:Exit SubErr_PrintInvoice_Click:如果用戶取消操作,不顯示錯誤消息。Const conErrDoCmdCancelled = 2501If (Err

45、 = conErrDoCmdCancelled) ThenResume Exit_PrintInvoice_ClickElseMsgBox Err.DescriptionResume Exit_PrintInvoice_ClickEnd IfEnd Sub(2)為“預(yù)覽發(fā)票”設(shè)置一個單擊事件,事件過程代碼如下:Private Sub Preview_Click()On Error GoTo Err_Preview_ClickDim stDocName As StringstDocName = 零售發(fā)票預(yù)覽“發(fā)票”報表,使用“發(fā)貨單篩選”查詢打印當(dāng)前訂單的發(fā)貨單。DoCmd.OpenReport

46、 stDocName, acPreview,零售發(fā)票篩選Exit_Preview_Click:Exit SubErr_Preview_Click:MsgBox Err.DescriptionResume Exit_Preview_ClickEnd Sub實現(xiàn):1)創(chuàng)建查詢2)利用向?qū)?chuàng)建窗體以“零售訂單查詢”、“擴展訂單明細”兩個查詢?yōu)閿?shù)據(jù)源,利用向?qū)?chuàng)建一個包含“零售訂單查詢”中“訂單ID”、“訂購日期”、“雇員ID”、“付款方式”四個字段的“零售訂單”主窗體及“擴展訂單明細”中除“訂單ID”、“車名”之外的所有字段的“零售訂單子窗體”。3)設(shè)定默認日期設(shè)定訂購日期文本框數(shù)據(jù)選項卡中的“默認

47、值”屬性值為“=Date()”。4)添加計算控件5)設(shè)置組合框(1)銷售人組合框在創(chuàng)建窗體時已自動建好。(2)付費方式組合框要刪除原有的文本框及標(biāo)簽,然后添加付費方式組合框。6)在設(shè)計視圖中修改窗體將零售訂單窗體切換到設(shè)計視圖,對窗體按圖解答42修改。(1)對窗體及各控件的位置、大小進行調(diào)整。(2)將主窗體中所有的提示標(biāo)簽字體設(shè)置為藍色、粗體。(3)將小計五個文本框的背景色設(shè)置為灰色、平面顯示、不允許修改。(4)取消主窗體的記錄選定器。(5)取消子窗體的導(dǎo)航條。(6)將子窗體中的庫存量、銷售價兩個文本框設(shè)置為不允許修改。修改完成的“訂單”窗體設(shè)計視圖如圖解答42所示。圖解答42 修改后的“訂單

48、”窗體設(shè)計視圖7)設(shè)置事件過程8)保存對窗體的修改 案例題案例1分析提示:由于窗體能將多個表中的數(shù)據(jù)集中在一個界面進行統(tǒng)一顯示和管理,使用戶可以在一個漂亮的界面中統(tǒng)一管理各種數(shù)據(jù),避免了顧此失彼,保持了數(shù)據(jù)的完整一致,為用戶帶來了實實在在的便利,因此會取得較好的應(yīng)用效果。這也正是窗體在數(shù)據(jù)庫中的優(yōu)勢所在。案例2分析提示:由于小王對Access數(shù)據(jù)庫了解很少,他只是機械地把Excel的工作表等同于Access的表,沒有對表進行總體規(guī)劃,表與表之間沒有關(guān)系。在這種情況下是無法在一個窗體中處理有關(guān)聯(lián)的數(shù)據(jù)的,因此他失敗了。 實訓(xùn)題教學(xué)建議:建議在做實訓(xùn)之前先讓學(xué)生瀏覽“羅斯文”數(shù)據(jù)庫中的相關(guān)窗體,借

49、此分析所要完成窗體的功能,然后確定這些窗體的數(shù)據(jù)源及用什么方法創(chuàng)建窗體。要強調(diào)的是實訓(xùn)內(nèi)容中所給的只是參考界面,學(xué)生完全可以根據(jù)自己的喜好,設(shè)計界面不同、功能相同的窗體。由學(xué)生自己設(shè)計的窗體,意在充分發(fā)揮學(xué)生對一個已有系統(tǒng)加以改進的創(chuàng)造力和想象力,培養(yǎng)學(xué)生解決實際問題的能力。學(xué)生無論設(shè)計出什么樣的窗體,只要沒有邏輯錯誤,教師都應(yīng)該給以肯定。 討論題1)討論建議:2)討論建議:從兩個角度看這個問題,從系統(tǒng)開發(fā)的整個過程來看,如果創(chuàng)建了表,就已經(jīng)完成了前期的準(zhǔn)備工作,將數(shù)據(jù)庫應(yīng)用系統(tǒng)的框架定了下來,是完成了很多的工作。從系統(tǒng)的實現(xiàn)和完善過程來看,數(shù)據(jù)表的建立只是完成了初步的工作,要使系統(tǒng)能夠?qū)嵱茫?/p>

50、還要創(chuàng)建查詢、窗體等很多對象,還有很多工作要做。3)討論建議:可從零售是否需要搜集客戶資料、零售過程中如何了解動態(tài)庫存、是否每次都要選擇銷售人員、選擇商品是否實用等幾個方面加以討論。第5章 知識題 簡答題1)解答:報表中大多數(shù)信息來自基礎(chǔ)的表、查詢或 SQL 語句。2)解答:使用“自動報表”創(chuàng)建報表需要包含數(shù)據(jù)源中的所有字段。縱欄式報表一般每頁顯示一條記錄而表格式報表每頁可顯示多條記錄,縱欄式報表可以在多個節(jié)上設(shè)置并顯示所需的內(nèi)容而表格式報表只顯示主體節(jié)中的內(nèi)容。3)解答:報表向?qū)АR驗槭褂谩白詣訄蟊怼眲?chuàng)建報表需要包含數(shù)據(jù)源中的所有字段,而使用報表向?qū)Э梢宰孕羞x擇數(shù)據(jù)字段。4)解答:組頁眉/組

51、頁腳不必成對設(shè)置。可以使用工具欄上的“排序與分組工具”按鈕啟動排序與分組對話框,然后在對話框中分別設(shè)置組頁眉和組頁腳是否添加。5)解答:主報表可以包含子報表,同樣也可以包含子窗體,而且能夠根據(jù)需要無限量地包含子窗體和子報表。另外,主報表最多可以包含兩級子窗體和子報表。 選擇題 單項選擇1)D2)D3)B4)B5)B6)C7)A8)B9)A10)D11)B12)B13)B14)B15)A16)C17)D18)A19)C20)A 多項選擇1)AD2)AD3)ABCD4)BCD5)ACD6)ABCD7)ABCD8)ABCD9)ABCD10)BCD 技術(shù)應(yīng)用1)解答:可以。在報表向?qū)С霈F(xiàn)選擇記錄排序?qū)?/p>

52、話框時,單擊“匯總選項”按鈕進行設(shè)置。在匯總選項對話框中可對需要計算的字段選擇總計、平均值、最小值、最大值的計算和顯示內(nèi)容。2)解答:不能。因為對字符型字段進行排序時,英文字符按ASCII碼進行比較,而漢字字符按漢字的機內(nèi)碼進行比較。而“一”、“二”、“三”、“四”、“五”漢字的機內(nèi)碼的順序為“二”、“三”、“四”、“五”、“一”。3)解答:設(shè)置了分組形式為“間隔”后,將對“銷售金額”按照組間距的設(shè)置來分組。從排序與分組對話框設(shè)置的值來看,銷售價將按10 000元的間距來分組,如21 000和29 000將分在一組。4)解答:如果為“工作組之上”,則在每個更高的級別中從0開始重新累計。如果為“

53、全部之上”,則從報表頭累計到報表末尾。5)解答:只需更改窗體的“記錄源”屬性值為所需的數(shù)據(jù)源。6)解答:沒有影響。有影響的是數(shù)據(jù)源之間所建立的關(guān)系。7)解答:可以鏈接。只要有相同屬性和內(nèi)容的字段就可以鏈接。 技能題 單項操作訓(xùn)練1)操作提示:只需使用報表向?qū)Р僮骷纯伞?)操作提示:只需使用報表向?qū)Р僮骷纯伞?)操作提示:只需使用標(biāo)簽向?qū)Р僮骷纯伞?)操作提示:本題操作沒有什么難度,只是要求對報表的格式屬性有一定的了解,關(guān)鍵是畫表格線,可利用標(biāo)簽和文本框的邊框顯示邊框。利用大小、對齊、間距菜單調(diào)整標(biāo)簽和文本框的大小和位置。 綜合操作訓(xùn)練1)操作提示:參照雇員訂單概覽報表操作。2)操作提示:創(chuàng)建如

54、圖545所示的新華商貿(mào)公司零售發(fā)票,可歸結(jié)為創(chuàng)建基于多表(產(chǎn)品、訂單、訂單明細、雇員四個數(shù)據(jù)表)、帶分組(以訂單號分組)和計算(計算總價、小計、運費、合計)的報表問題。創(chuàng)建這個報表前要先考慮以下問題:(1)設(shè)計報表的方法。由于這個報表比較復(fù)雜無法直接用報表向?qū)桑捎弥苯釉谠O(shè)計視圖中進行設(shè)計并修改的方法來創(chuàng)建報表。(2)報表數(shù)據(jù)源的選擇。報表的數(shù)據(jù)源根據(jù)實際情況可以是數(shù)據(jù)表,也可以是查詢。可以是一個表,也可以是多個表。如果是多個表,這些表之間必須先建立關(guān)系。零售發(fā)票報表涉及四個數(shù)據(jù)表,且在實際使用這些數(shù)據(jù)表時,還要對數(shù)據(jù)進行篩選,適合用查詢作數(shù)據(jù)源。選擇以“零售發(fā)票”查詢作數(shù)據(jù)源。(3)確定

55、分組和排序字段。根據(jù)零售發(fā)票的實際要求,選擇訂單ID作為分組字段。以第一關(guān)鍵字訂單ID降序,第二關(guān)鍵字產(chǎn)品ID升序作為分組和排序的依據(jù)。實現(xiàn):1)打開報表設(shè)計視圖在數(shù)據(jù)庫窗口中單擊“報表”選項卡,單擊“新建”菜單,在窗口中選中“設(shè)計視圖”,并在下拉式列表框中選擇“零售發(fā)票”查詢作為數(shù)據(jù)源,單擊確定后得到報表設(shè)計窗口。在設(shè)計視圖中,雙擊報表選定器打開屬性表,設(shè)置報表寬度為15.8厘米。2)設(shè)置排序、添加組頁眉/頁腳在報表設(shè)計視圖中任意部位單擊右鍵,在出現(xiàn)的快捷菜單中單擊“排序與分組”對話框。在第一行選擇“訂單ID”與“降序”,在第二行選擇“產(chǎn)品ID”與“升序”。接著選擇訂單ID對其進行組屬性的設(shè)

56、置,將組頁眉設(shè)置為“是”、組頁腳也設(shè)置為“是”,其他采用默認值。產(chǎn)品ID不用分組,不必設(shè)置組屬性。組屬性設(shè)置完畢后關(guān)閉對話框。3)添加報表標(biāo)題(1)按圖解答52添加報表標(biāo)題。單擊工具欄中的標(biāo)簽按鈕,將鼠標(biāo)指針在頁眉區(qū)域拖曳出一個大小合適的矩形框后輸入表標(biāo)題“零售發(fā)票”。(2)然后設(shè)置此標(biāo)簽的屬性:前景顏色為藍色(可選擇顏色或輸入顏色值8388608)、字體名稱為宋體、字體大小為20、字體粗細為加粗。(3)調(diào)整訂單ID頁眉區(qū)域大小,單擊工具欄上的“直線”工具按鈕,再用鼠標(biāo)指針在頁眉區(qū)域拖拽出一根長短合適的裝飾線條,點擊線條設(shè)置屬性,邊框?qū)挾?磅、前景顏色值8388608。4)設(shè)計訂單ID頁眉(1

57、)先將訂單ID頁眉區(qū)域調(diào)整大一點,以方便在里面添加控件。(2)添加兩個藍色背景的矩形框。單擊工具欄上的“矩形”工具按鈕,在訂單ID頁眉區(qū)拖曳出一個矩形框,在矩形框中單擊右鍵,在快捷菜單中選擇“屬性”命令,設(shè)置矩形框的背景色為藍色。設(shè)置完成后再復(fù)制一個矩形框并按圖解答52調(diào)整兩個矩形框的位置。(3)添加6個文本框。用添加報表標(biāo)題的方法在訂單ID頁眉區(qū)添加“產(chǎn)品號:”、“產(chǎn)品名稱:”、“數(shù)量:”、“單價:”、“折扣:”、“總價:”6個文本框,前景顏色設(shè)置為白色、字體為宋體、字號為12號,并按圖解答52調(diào)整文本框的大小并拖拽至合適的位置。(4)添加“訂單ID”、“銷售人”、“訂購日期”3個字段。將字

58、段列表中的“訂單ID”字段拖曳至訂單ID頁眉區(qū),將鼠標(biāo)指針對準(zhǔn)“訂單號”標(biāo)簽左上角的黑色小方塊,待鼠標(biāo)指針變形為手形后將標(biāo)簽拖拽至合適的位置。再將“訂單ID”文本框調(diào)整至合適的位置和大小。設(shè)置標(biāo)簽的屬性:宋體、12號,字體顏色為白色。用同樣的方法設(shè)置“銷售人”、“訂購日期”。(5)為“訂單ID”、“銷售人”、“訂購日期”3個字段所在行的文本框加上邊框線(如圖解答51所示)。為文本框字段加邊框線可按以下步驟進行: 設(shè)置所有文本框的邊框樣式屬性值為“實線”。 在多余的空缺部位加一個只含有若干空格的空文本框,邊框樣式屬性值為“實線”。 利用格式菜單中的對齊命令,反復(fù)調(diào)整使文本框上下對齊。 利用格式菜

59、單中的間距命令,先使文本框間距相同,再縮小間距直至間距為零。 調(diào)整空白文本框的大小,使邊框?qū)挾葷M足使用要求。圖解答51 加上邊框線后文本框的顯示效果5)設(shè)計主體節(jié)(1)將“產(chǎn)品ID”、“產(chǎn)品名稱”、“數(shù)量”、“單價”、“折扣”、“總價”6個字段分別從字段列表中拖到主體節(jié)中。(2)分別刪除它們的提示標(biāo)簽,按圖解答52調(diào)整它們的大小和位置。(3)設(shè)置一根長的裝飾分割線條。6)訂單ID頁腳設(shè)計(1)添加“合計”標(biāo)簽。(2)添加“發(fā)貨單小計”文本框。“發(fā)貨單小計” 文本框中使用了對總價字段求和的內(nèi)置函數(shù)SUM。設(shè)置過程如下: 添加一個未綁定數(shù)據(jù)的文本框,調(diào)整文本框的大小、位置及格式屬性,在屬性的其他選

60、項卡中設(shè)置文本框的名稱為“發(fā)貨單小計”。 在文本框數(shù)據(jù)屬性中,單擊控件來源右邊的表達式生成按鈕,利用表達式生成器生成函數(shù)計算公式“=Sum(總價)”。也可直接在控件來源列表框中輸入函數(shù)計算公式“=Sum(總價)”。7)設(shè)置分頁預(yù)覽報表,可以看到不按訂單分頁的報表,不符合發(fā)票要求。在訂單ID頁腳單擊右鍵修改其格式屬性下的強制分頁屬性值為“節(jié)后”,即可使報表按訂單分頁。8)保存報表為“零售發(fā)票”圖解答52 新華商貿(mào)公司零售發(fā)票設(shè)計視圖 案例題案例1分析提示:使用報表,可以使數(shù)據(jù)更具吸引力和說服力。介紹新產(chǎn)品沒有什么會比清晰雅致的數(shù)據(jù)更為有效。因此盡管領(lǐng)導(dǎo)決定花費重金印制一批宣傳資料發(fā)給到會的來賓,

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論