![Access2010數(shù)據(jù)庫快速開發(fā)案例教程_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/31c41a56-875d-44db-b788-4425024a0934/31c41a56-875d-44db-b788-4425024a09341.gif)
![Access2010數(shù)據(jù)庫快速開發(fā)案例教程_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/31c41a56-875d-44db-b788-4425024a0934/31c41a56-875d-44db-b788-4425024a09342.gif)
![Access2010數(shù)據(jù)庫快速開發(fā)案例教程_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/31c41a56-875d-44db-b788-4425024a0934/31c41a56-875d-44db-b788-4425024a09343.gif)
![Access2010數(shù)據(jù)庫快速開發(fā)案例教程_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/31c41a56-875d-44db-b788-4425024a0934/31c41a56-875d-44db-b788-4425024a09344.gif)
![Access2010數(shù)據(jù)庫快速開發(fā)案例教程_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/31c41a56-875d-44db-b788-4425024a0934/31c41a56-875d-44db-b788-4425024a09345.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 Access培訓基礎教程-報銷管理系統(tǒng)5.1 建表與相關字段屬性的解說學習要求:本節(jié)預計學習課時為1小時,重點是:a.新建表的操作;b.設置主鍵; c.理解字段的各個屬性。學習說明我們都知道,無論是多么強大、多么先進的數(shù)據(jù)庫,都是基于存儲在表中的數(shù)據(jù)來運行的,因此,表的設計和建立就顯得特別重要,這也是數(shù)據(jù)庫中最基礎、最重要的組成部分之一如若把數(shù)據(jù)庫比作一個倉庫的話,那么,表的設計,就好比這個倉庫的倉位設計,而表的建立,就好比是倉位建設的施工因此,如若倉庫的倉位的設計和施工出了問題,毫無疑問,必然會給這個倉庫的管理帶來極大的不便,因此,希望大家能注重基本功的概念和練習,只有牢固的基本功,才能讓
2、我們走得更遠、走得更好。建表與相關字段屬性的解說在前面的課程中,我們已經(jīng)講過表的設計,那么,在這一節(jié)中,我們就來講表的施工,也就是表的建立,所謂表的建立,就是將先前對應的表的設計圖,在當前的對應的數(shù)據(jù)庫文件中加以實現(xiàn)。我們將以實際的例子加以說明,比如tblCodeyg這個表,它的表設計如下:那么,我們應該如何實現(xiàn)呢?首先,進入我們先前存儲項目文件的C盤下的BXMIS目錄,雙擊鼠標左鍵打開【Data.mdb】文件,則如下圖所示:對于熟悉Access 2003的人來說,這個界面可能有些陌生,但是原理都是一樣的此時,我們注意到,當前默認顯示的是的欄目,接下來點選后面的小倒黑三角,則如下圖所示:接下來
3、,我們選中【表(B)】選項,則如下圖所示:如上圖所示,在【表】欄目下,我們會發(fā)現(xiàn),已經(jīng)有了8個名稱以Sys為前綴的表的存在,需要特別說明的是,這些表并非是Access本身就有的,而是盟威軟件快速開發(fā)平臺的系統(tǒng)表,也就是說,除非是教程的指引,這些表是不允許我們手工修改和刪除的如若擅自改動或刪除這些平臺系統(tǒng)表,那么,可能會導致基于平臺運行的各類系統(tǒng)出現(xiàn)各種難以預料的故障。接下來,我們正式開始建表,請依次點選【創(chuàng)建】【表設計】,如下圖所示:當我們點選【表設計】,打開表的設計視圖之后,如下圖所示:在當前的設計視圖中,左側窗格的右側有一個按鈕(該按鈕名叫百葉窗開關按鈕),通過這個按鈕,即可以控制左側窗格
4、的開關,我們可以根據(jù)自己的喜好,來選擇開啟或關閉右側窗格,在這里,我們就暫且關閉左側窗格關閉完成之后,如下圖所示:如上圖所示,表的設計界面,上半部分是【字段名稱】、【數(shù)據(jù)類型】和【說明】(【字段】的【說明】,類似備注),下半部分是【字段屬性】界面,默認尚未被激活,當在【字段名稱】列中輸入字段名稱,并將鼠標光標移到【數(shù)據(jù)類型】列之后(【數(shù)據(jù)類型】的默認值為文本,需要根據(jù)實際的需要進行調整),相應的【字段屬性】就會被激活,如下圖所示:為了便于表的建立,現(xiàn)在就將表設計說明書中的項目和表設計視圖中的對象(列或屬性)的對應關系以簡明的方式加以說明,如下表所示:設計說明書中的項目設計界面中的對象(列或屬性
5、)備注字段名字段名稱標題名稱數(shù)據(jù)類型字段類型字段屬性-標題字段大小字段屬性-字段大小必填字段屬性-必需是或否,除主鍵外,默認為否位數(shù)字段屬性-小數(shù)點位數(shù)適用于數(shù)據(jù)類型為貨幣和數(shù)字的字段說明說明需要特別說明的是,雖然【字段屬性】是從屬于字段的,但是卻與【數(shù)據(jù)類型】密切相關,因此,【數(shù)據(jù)類型】不同,相對應的字段的【字段屬性】也有差異,比如,在字段的【數(shù)據(jù)類型】為文本的情況下,【字段屬性】中就沒有小數(shù)點位數(shù)的屬性設置項這也是為什么在沒有選擇【數(shù)據(jù)類型】以前,【字段屬性】不被激活的根本原因在【數(shù)據(jù)類型】沒有確定之前,由于不同的【數(shù)據(jù)類型】,所擁有的【字段屬性】也有所不同,因此,系統(tǒng)根本就無從判斷需要顯
6、示哪些屬性項。下面,我們就將ygID字段按表設計說明書的要求建設完畢,如下圖所示:需要值得說明的是,本教程中沒有提到的【字段屬性】的相關設置項,請不要隨意更改除非您對您的更改所帶來的實際影響和顯示效果非常明白接下來,按照表設計說明書的要求,完成剩下字段的建立,如下圖所示:此時,還有一項工作沒有完成,那就是設置主鍵,所謂主鍵,就是一條記錄的唯一標識符,這就好比在戶籍系統(tǒng)中,我們的身份證號是我們身份的唯一標識符一樣,因此,一個字段一旦被標識為主鍵,那么,這個字段的值,便是不允許出現(xiàn)重復的這就如同在戶籍系統(tǒng)中,身份證號是不允許出現(xiàn)重復是一樣的,接下來,我們就開始設置主鍵先在表設計視圖中選擇ygID字
7、段,或者將鼠標光標移回ygID字段那一行內的任意位置,然后再點選工具欄上的按鈕,或右擊鼠標右鍵,選擇其中的命令,其后,ygID字段前記錄選定器的便多了一個標志,這便是主鍵字段的標志。正是因為一個主鍵字段是不允許出現(xiàn)重復值,所以,當一個字段被設置為主鍵后,它的字段屬性也會同時發(fā)生改變,那就是字段屬性中的【索引】的值將從【無】自動變更為【有(無重復)】,并且,這個值是不允許更改的,除非取消這個字段的主鍵設置取消主鍵,也就是刪除附加在這個字段上的主鍵屬性,方法也很簡單,在已經(jīng)設置好主鍵的字段上再次點選按鈕,或單擊鼠標右鍵,在彈出的右鍵才菜單上選擇命令,就可以刪除當前字段的主鍵屬性(并不會連帶刪除當前
8、的字段)。如若已經(jīng)設置好了主鍵,則如下圖所示:好了,字段的設計就告一段落,接下來,我們就可以保存已完成的工作依次點選【文件】【保存】命令,或單擊左上角右側的按鈕,如下圖所示:如上圖所示,單擊保存按鈕之后,如若沒有事先保存,則會彈出【另存為】對話框,如下圖所示:由于在表設計說明書中,該表的表名為:tblCodeyg,因此,接下來,刪除【表名稱(N)】下的文本框中的默認值:表1,然后輸入表設計說明書中的對應的表名:tblCodeyg。需要強調的是,為了以后編寫代碼以及可能的后續(xù)開發(fā)的便利,表名最好以英文的形式(或字母的形式,可以包含數(shù)字和下劃線)來命名。輸入完畢,單擊確認按鈕,我們注意到,此時的表
9、的設計區(qū)域的頂部已經(jīng)發(fā)生了明顯的變化,已經(jīng)由先前的變?yōu)楫斍暗?,如下圖所示:如上圖所示,這其中的便是剛才輸入的表的名稱。這個時候,我們也就發(fā)現(xiàn),先前截圖中一再出現(xiàn)的,便是系統(tǒng)指定的默認名稱。現(xiàn)在,該表的設計工作就已經(jīng)全部完成了,首先,我們先通過單擊按鈕,恢復左側窗格的顯示,可以很清晰地看到,我們剛才建的表已經(jīng)出現(xiàn)在表的列表窗格中,如下圖所示:接下來,單擊表名稱右側的按鈕,退出tblCodeyg表的設計視圖如若單擊標題欄右側的按鈕,則會退出整個數(shù)據(jù)庫,因此,不要點錯了位置。接下來,我們便可以按照同樣的方法,完成表設計說明書中tblCodelb表和tblBxmx的建立,在這里,需要值得說明的是tbl
10、Bxmx表的czsj字段,按照表設計說明書的要求,這個字段是不需要手工輸入的,當前的操作時間,可以從操作系統(tǒng)中直接提取,所以,我們需要借助一個系統(tǒng)函數(shù)來實現(xiàn)這個設計目標,這就需要使用Now()函數(shù),該函數(shù)可以在錄入當前記錄的時候,自動提取當前的操作系統(tǒng)時間插入對應的表格中。在這里,需要再次強調的是,由于該函數(shù)直接從操作系統(tǒng)中提取時間,因此,如若操作系統(tǒng)時間錯誤,那么,該函數(shù)也必將插入錯誤的系統(tǒng)時間,因此,請確保您當前使用的操作系統(tǒng)時間沒有錯誤由于該項操作涉及操作系統(tǒng)的控制面板,而操作系統(tǒng)的課程,并非Access的課程,因此,請大家參閱相關教程。那么,既然可以使用系統(tǒng)函數(shù)從操作系統(tǒng)中自動提取時間
11、,那么,在實際的表的設計中,應該如何實現(xiàn)這個設計目標呢?或許已經(jīng)有人注意到,在字段的屬性中,有一個默認值的屬性,或者可以把該系統(tǒng)函數(shù)寫入默認值屬性來達到實現(xiàn)此功能的目的完全正確,就是這樣當然,這也不是唯一的實現(xiàn)方式,比如,我們也可以在后續(xù)的窗體建設中,再來實現(xiàn)此設計目標。當前,我們就在當前環(huán)節(jié)實現(xiàn)此設計目標,首先,打開tblBxmx表的設計視圖,定位到czsj字段,然后【字段屬性】的在默認值一欄中,輸入以下字符:=Now(),如下圖所示:需要值得注意的是,在這個位置,盡管我們可以借助系統(tǒng)函數(shù)來實現(xiàn)自動提取操作系統(tǒng)當前時間,來實現(xiàn)自動輸入的目的,但是,在當前的表中,我們仍然可以在表中手工修改此時
12、間,當然,在系統(tǒng)正式投入運行之后,手工直接向表中寫入數(shù)據(jù),是不被允許的,所以,不用擔心系統(tǒng)自動提取的數(shù)據(jù)會被修改而違背了我們設計的初衷,當然,在后續(xù)的窗體設計中,盡管也可以提供修改此時間的界面,但我們可以在設計的環(huán)節(jié),就可以禁用此功能,因此,可以確保此設計目標的實現(xiàn)。當然,這是后續(xù)的課程所需要講述的內容,所以,其中的細節(jié),在這里就不過多闡述了。5.2 文本框、列表框與組合框學習要求:本節(jié)預計學習課時為0.5小時,重點是:a.字段屬性中文本框、列表框、組合框;b.如何設置組合框的行來源。為了后續(xù)講述的方便,我們先遵照表設計說明書的標準,輸入一些測試數(shù)據(jù)首先,我們選中tblCodelb表,然后,單
13、擊鼠標右鍵,選擇命令,或直接tblCodelb上雙擊鼠標左鍵,都可以進入表的【數(shù)據(jù)表視圖】,如下圖所示:再次強調,在正常情況下,是不允許用戶直接在表中輸入數(shù)據(jù)的,但我們這里為了教學的方便,先往表中錄入幾行試驗數(shù)據(jù)(注意類別編號的錄入根據(jù)表設計的要求,必須是字母L+2位數(shù)字,否則在后續(xù)學習中,會出現(xiàn)問題),輸入完成之后,如下圖所示: 好了,測試數(shù)據(jù),已經(jīng)輸入完畢,現(xiàn)在可以關閉當前的tblCodelb表,繼續(xù)下一步的分析。當前的數(shù)據(jù)庫中,已經(jīng)有了三個用戶建立的表我們很快就可以發(fā)現(xiàn),當前三個表的主體,其實是tblBxmx表,至于tblCodeyg表和tblCodelb表,其實都是為tblBxmx服務
14、的,通過tblBxmx表中的lbID字段和ygID字段關聯(lián),為tblBxmx提供選項值,以節(jié)省輸入時間,避免重復的手工輸入。首先,請再次打開tblBxmx表的設計視圖,我們會發(fā)現(xiàn),幾乎所有的字段的【字段屬性】,都有兩個選項卡,一個是【常規(guī)】選項卡,是一個【查閱】選項卡,如下圖所示:這個時候,我們就會明白,我們先前涉及的所有的【字段屬性】,都是從屬于常規(guī)選項卡的,而對于【查閱】選項卡,幾乎沒有涉及,那么,我們先定位到lbID字段,然后再單擊【查閱】選項卡,如下圖所示:我們發(fā)現(xiàn),默認情況下,【查閱】選項卡,只有一個屬性,那就是【顯示控件】,而當前顯示控制的默認的值是文本框,所謂文本框,就是只能提供
15、一個可輸入方框的控件接觸過網(wǎng)絡和計算機的,一般都知道,我們在錄入數(shù)據(jù),尤其是城市、性別、類別之類有明確可選值的數(shù)據(jù)的時候,都喜歡在系統(tǒng)所提供的下拉列表中直接點選相應的選項,但是,這個文本框卻只能提供錄入方框,而不能同時提供可選擇的下拉列表那么,如若能提供可選擇的下拉列表,有什么好處呢?那就是,通過點選下拉列表的值,一方面,能顯著地提高輸入的效率,另一方面,輸入的準確率(防止筆誤)也可以一并提高,顯然,好處是顯而易見的。那么,如何才能讓【顯示控件】(即顯示可輸入方框的控件)提供可選擇下拉可選列表的功能呢?接下來我們單擊顯示控件的輸入?yún)^(qū),然后點選由于激活輸入?yún)^(qū)而隨之出現(xiàn)的按鈕,則如下圖所示:這個時
16、候,我們就可以發(fā)現(xiàn),原來【顯示控件】已經(jīng)提供了3個選項,分別是文本框、列表框、組合框文本框,我們已經(jīng)解釋了,那么,列表框是什么呢?列表框,也就是說,在輸入?yún)^(qū)域被激活之后,會根據(jù)已指定的數(shù)據(jù)源(也就是可選項的數(shù)據(jù)來源)的當前數(shù)據(jù)提供一個可選的值列表這個列表是動態(tài)的,會根據(jù)數(shù)據(jù)源中數(shù)據(jù)的變化而變化,但在某一個靜止的時間點上,又是相對的靜態(tài)。比如,比如有一個體重類別的數(shù)據(jù)列,被其他表引用,作為其某一個字段的數(shù)據(jù)源,如若這個體重類別的數(shù)據(jù)列中當前苗條、正常兩行數(shù)據(jù),那么,引用其作數(shù)據(jù)源的控件的下拉列表中,也只有苗條和正常兩個選項如若體重類別數(shù)據(jù)列中,又添加了偏瘦和超重,那么,引用其作數(shù)據(jù)源的控件的下拉
17、列表中,也會動態(tài)地增加這兩個選項。在這里,需要強調的是,在【顯示控件】被指定為列表框之后,一切在可選值之外的輸入,都是不被允許的,也就是說,我們只能從數(shù)據(jù)源提供的值列表中來選擇輸入,而不再被允許輸入以外的數(shù)據(jù),因此,采用列表框,在提高輸入效率的同時,也可以精確地提高輸入的準確率,防止非法數(shù)值的出現(xiàn),比如,在報銷數(shù)據(jù)庫的場合中,則可以禁止沒有報銷權限的人員的報銷單據(jù)的錄入,便于企業(yè)的內部管理,以及提高企業(yè)內控的安全性。那么,組合框呢?已經(jīng)解釋了文本框和列表框,那么,組合框就很好說明了所謂組合框,就是文本框和列表框的組合,也就是說,即可以自由輸入數(shù)據(jù),也可以從列表中選擇,顯得比較自由針對一些安全性
18、不是很高,并且,可以提供可選項數(shù)據(jù)的場合,可以采用組合框。在此,需要說明的是,組合框也可以實現(xiàn)列表框的功能如何實現(xiàn)呢?我們要知道,無論是任何對象,包括字段、控件、窗體和報表在內,都是通過其一系列的內部屬性的設置來控制其外在的表現(xiàn)的形式組合框當然也不例外,在組合框的屬性中,有一個【限于列表】的屬性,默認是不限于列表,即可以輸入列表之外的值,如若我們將其修改為是,即讓其限于列表,那么,當前的組合框也不允許錄入下拉列表選項以外的數(shù)據(jù),其效果也就和列表框完全一致。在當前的場合,由于報銷類別和員工姓名,都是比較重要的數(shù)據(jù),因此,看起來,選用列表框,看起來是最為簡便的其實不然,在這里,我們選擇組合框,其后
19、,如下圖所示:如上圖所示,當我們選擇組合框之后,從屬于組合框的一系列屬性,就立即會被激活,并顯示出來默認的【行來源類型】(也就前面提到的數(shù)據(jù)源的種類,也就是可選項的數(shù)據(jù)來源對象的種類)是表/查詢,而我們前面已經(jīng)提到,tblCodeyg表和tblCodelb表,都是為tblBxmx表服務的,而tblBxmx表中l(wèi)bID字段的可選項則是來源于tblCodelb表,那么,在這里,顯然應該選擇默認值,也就是行來源的類型應當是:表/查詢。已經(jīng)指定了【行來源類型】(也就是數(shù)據(jù)源對象的種類),那么,下一步就應當指定具體的數(shù)據(jù)源了當前,也就是需要指定【行來源】,【表/查詢】類型的數(shù)據(jù)源的指定,有兩種方式:第一
20、種方式,可以直接選擇表或查詢(需要滿足一定的前提條件),另一種方式,可以通過SQL代碼來實現(xiàn)的。當前,我們將先通過第二種方式來進行在以后的窗體開發(fā)的環(huán)節(jié),再來講述第一種方式的設置和相關細節(jié)。但是,通過第二種方式,也有兩種操作方式,第一種,是直接編寫SQL代碼,第二種,是通過SQL語句生成器來自動生成SQL代碼由于考慮SQL語句對部分的初學者,可能有那么的一點難度,因此,我們可以通過Access提供的SQL語句生成器來自動生成我們所需要的SQL代碼,那么,這個自動生成功能如何使用呢?我們先激活【行來源】的輸入?yún)^(qū)(所謂激活,就是鼠標單擊該輸入方框內的任意位置),就會發(fā)現(xiàn),在【行來源】輸入方框外的右
21、側,出現(xiàn)了一個按鈕,如下圖所示:接下來,我們單擊按鈕,則如下圖所示:就這樣,我們通過單擊按鈕,啟動了【查詢生成器】,可以用以生成我們所需的SQL語句首先,我們要在彈出的【顯示表】對話框中,選擇我們當前的控件所需要的數(shù)據(jù),由哪個表來提供,顯然,應當選擇tblCodelb表,如下圖所示:然后,我們單擊【添加(A)】按鈕,就可以將表添加到查詢設計界面,接下來,通過單擊【顯示表】對話框中【關閉(C)】按鈕,關閉【顯示表】對話框,然后,如下圖所示:當前的這個設計界面,上半部分是表和查詢的顯示區(qū)域,下半部分是用以生成SQL語句(或查詢)的設計區(qū)域,接下來,我們先選中l(wèi)bID字段,如下圖所示:然后,雙擊lb
22、ID字段,lbID字段就會被自動地放置于下半部分的設計窗格中,如下圖所示:當然,也可以通過拖拽的方式即先行點選lbID字段,然后,按住鼠標左鍵拖拽,將該字段拖拽到適當?shù)拇案裆戏綍r,再松開鼠標左鍵,也可以達到同樣的目的。同理,我們將lbmc字段,也拖放到設計窗格,如下圖所示:由于當前的查詢設計,即是為了配合生成以tblCodelb表中兩個字段為主體的查詢,進行到這里,兩個字段都已經(jīng)被拖放到設計窗格中去了,也就是說,我們已經(jīng)完成了全部的設計工作,不用再做進一步的處理,更不需要再進行排序、統(tǒng)計或寫相應的表達式這種查詢,可以說,是最為簡單的查詢,簡單到不能再簡單的地步。接下來,我們單擊設計區(qū)域頂端右側
23、的按鈕,就會彈出一個對話框,如下圖所示:這個對話框的意思就是說是否要生成SQL語句,并填寫到【行來源】的輸入方框(也就是行來源的屬性值)中去這正是我們建立查詢的目的,因此,當然要單擊【是(Y)】按鈕加以確認,然后,則如下圖所示:很顯然,我們所需要的SQL代碼,已經(jīng)被自動填好了由系統(tǒng)所生成的SQL語句,如下:SELECT tblCodelb.lbID, tblCodelb.lbmc FROM tblCodelb這一條SQL代碼的意思是說,返回(即SELECT關鍵字的作用)來源于(即FROM關鍵字的作用)tblCodelb表中的lbID和lbmc字段的值的列表。對于學過SQL語言的來說,以上的語句
24、,幾乎可以說是最為簡單的SQL代碼如若先前沒有學過SQL語句,以后再用到類似到語句的時候,只需要將其中的表名和字段名稱替換成對應的表名和字段名稱即可。接下來,我們再看【綁定列】屬性,默認值是1,這個屬性的意思就是說,將從【行來源】中返回的數(shù)據(jù)列表結果集的哪一列中的數(shù)值保存到表中我們剛才設計的查詢,毫無疑問,返回的結果集,只有2列,第一列是lbID(類別編號),第二列是lbmc(類別名稱)而我們當前的這個屬性是歸屬于tblBxmx表的lbID的字段,其【字段大小】只有3,與第一列相匹配,因此,顯然我們應該將第一列的相應對的值,保存到表中去,因此,保持默認值即可,無需修改。這個時候,我們不妨再理一
25、下思路也就是說,我們在激活下拉列表,選擇相應值以便完成輸入的時候,當然是希望下拉列表中的選項,都是我們所容易理解的,比如,我們可以再次打開tblCodelb表,查看剛才輸入的測試數(shù)據(jù),這個時候,我們就會發(fā)現(xiàn),第一列的數(shù)據(jù)是很難理解的,單單看第一列數(shù)據(jù),我們很難知道L01代表什么,L02代表什么,但是與第一列所對應的第二列,則是一目了然的電話費、資料費所代表的含義,我們都能理解不妨再以當前的tblCodelb表來舉例既然L01代表電話費,L02代表住宿費,那么,我們當然希望點選的時候,看到的是第二列的數(shù)據(jù),而保存在tblBxmx表中的,卻是第1列的數(shù)據(jù)不然,我們還需要記憶類別編號和類別名稱之間的
26、對應關系這樣做豈不是太辛苦了?比如,在現(xiàn)實中,雖然我們身份的唯一標識是身份證號(類似于這里的類別編號,同樣不允許重復),但是,平常我們生活之中彼此相稱,卻是以姓名或別名、昵稱、字號相稱,而不是以身份證號相稱但是,我們要查驗一個人的真正的身份的時候,卻通常是以身份證號來查驗,而不是以平常所稱的姓名來查驗。以上的這個道理,與當前的tblBxmx表的lbmc字段的道理是一樣的。也正是因為這個道理,所以,我們才在查詢設計的時候選擇了兩列數(shù)據(jù),第2列數(shù)據(jù)是顯示給前臺界面的操作員看的,就好比我們平常以姓名或別名、昵稱、字號相稱,而第1列的數(shù)據(jù),相當于身份證號,則是需要保存到表格中去的(將被選擇的選項所對應
27、的第1列的值保存到表中,比如,如若選擇是電話費,則將所對應的L01保存到表格中去)。因此,理想的設計便是,可供選擇的列表值是友好的,而存儲在數(shù)據(jù)庫中的值卻是唯一的、高效的,這也是我們?yōu)槭裁匆4娴?列的數(shù)據(jù),而不是保存第2列的原因當然,在表設計的時候,我們可以設計成保存第2列的數(shù)據(jù),但我們并沒有那樣去設計當然,在完成表設計之后的現(xiàn)在,也只能保存第1列中的數(shù)據(jù)。為什么呢?這是因為類別名稱或許不會出現(xiàn)的值,但是在實際案例中,有很多字段都會出現(xiàn)重復的值,比如姓名,因此,為了養(yǎng)成良好的習慣,我們這里遵循通用的設計原則。此外,即便是在tblCodelb表中,類別名稱不會出現(xiàn)重復,但是,如若我們在做表設計
28、的時候,如若選擇在tblBxmx表的lbmc字段中保存來源于tblCodelb表中第2列數(shù)據(jù),比如,保存是電話費,而不是L01,那么,如若以后類別名稱有所調整那么,tblBxmx表中凡是涉及到電話費的記錄,都需要一一調整盡管我們有批量調整的辦法,但是畢竟增加了一項工作而如若保存的是第1列數(shù)據(jù),比如,保存的是L01,那么,無論以后相對應的類別名稱如何調整,tblBxmx表的lbID字段的值都不用做任何調整,比如,在現(xiàn)實中,無論我們如何更改姓名、昵稱、字號,而我們的身份證號卻是不變的,因此,只要確定了一個人的身份證號,這個人的姓名、昵稱、字號無論如何變更,都可以將其鎖定并找出來。lbID因此,數(shù)據(jù)
29、庫的設計工作,雖然也是一項技術工作,但是在了解相關的技術細節(jié)的同時,也需要了解其相關的業(yè)務,不然,設計工作和實際的工作,可能會產生比較嚴重的脫節(jié),與此同時,我們還要掌握相關的開發(fā)技巧,比如,剛才的這個設計盡量給前臺用戶提供便利,而把相關的計算隱藏在用戶所覺察不到的后臺。接下來,我們繼續(xù),下一個屬性是【列數(shù)】,這里問的是我們需要由【數(shù)據(jù)源】返回的結果集其中的前幾列前面討論了那么多,當然知道是需要2列,所以,這里由默認的1更改為2。下一個屬性是【列標題】,所謂【列標題】,就是該字段的【字段屬性】的【常規(guī)】選項卡的【標題】屬性的值,在下拉列表彈出的時候,是否附帶顯示在下拉列表的頂端如若沒有給該標題賦
30、值,則直接顯示相應的字段名稱,在這里,也就是顯示lbmc。通常來說,列標題,會在輸入界面中,以標簽的形式出現(xiàn),因此,這里就沒有必要重復出現(xiàn)了當然,這也根據(jù)需要來定,通常也是需要的,不排除某些特殊場合是需要的。下一個屬性是【列寬】,我們知道,剛才填寫【列數(shù)】屬性的時候,就已經(jīng)知道當前返回的結果集有兩列,所以,這里應當分別設置兩列的寬度前面已經(jīng)分析過,最理想的情況是,提供的可選項是第2列的數(shù)據(jù),而存儲在數(shù)據(jù)庫中的卻是相對應的第1列的編號,因此,點選的時候,是沒有必要同時顯示兩列數(shù)據(jù)盡管可以這么做。再則,比如,電話費所對應的編號是什么,完全沒有必要讓普通用戶知道完全可以將這些計算工作放在后臺進行。因
31、此,盡管我們選擇了2列,仍然可以通過技術手段將第1列隱藏,即將其列寬設置為0cm,第2列的列寬,根據(jù)當前的情況,設置為2cm就可以了(可以根據(jù)需要適當調整),因此,這里應該這樣填寫:0cm;2cm需要值得注意的是,列寬屬性中兩個長度之間的分號必須是英文輸入法下的分號,如若是誤用了中文的分號,系統(tǒng)會報錯的如若遇到系統(tǒng)報錯,請不要疑惑,切換一下輸入法即可。接下來,是【列表行數(shù)】屬性,這個屬性牽涉到整個下拉列表框的高度,默認為8行的高度,在這里,我們可以將其調整為20行如若可選值超過20行,則會顯示垂直滾動條。接下來是【列表寬度】前面的【列表行數(shù)】實際上是整個可選列表框高度的設置,而【列表高度】則是
32、整個可選列表框的寬度的設置,通常保持默認的自動即可,當然,也可以去規(guī)定一個寬度當這里設置的寬度小于前面設置的總的【列寬】(所有字段累加的寬度即總的【列寬】),那么,將會顯示出水平滾動條。最后就是前面提過的【限于列表】了,默認是否,這里應該修改為是。以上設置全部完成之后,如下圖所示:進行到這里,lbID的【字段屬性】的相關設置工作就已經(jīng)全部完成了,接下來,我們可以按照同樣的原理和方法完成ygID字段的【查閱】選項卡中相關屬性的設置工作,完成之后,如下圖所示:接下來,我們可以通過單擊按鈕來保存表的設計進行到這里,表的建立工作就已經(jīng)全部完成了。在這個過程中,我們可以發(fā)現(xiàn),技術是一個方面,設計思路又是
33、一個方面,只有完善的設計思路,再搭配比較嫻熟的技術,才可以建立比較完善的系統(tǒng),因此,在學習的過程中,一定注意設計思想的總結和提高對于善于領悟的人來說,設計思想的提高不僅僅可以帶來數(shù)據(jù)庫技術的改變,也必定可以給個人生活帶來全方位的改變,為什么可以這樣呢?因為各行各業(yè),包括生活、工作、學習的基礎和理論,本來就是相通的,所以才可以一以貫之,一通百通,因此,衷心地希望本教程能給大家?guī)聿煌岔懙捏w驗和改變。5.3 鏈接表學習要求:本節(jié)預計學習課時為0.5小時,重點是:a.手工創(chuàng)建鏈接表的操作;b.用快速開發(fā)平臺創(chuàng)建鏈接表的操作。表的建立完成之后,接下來,就是表的鏈接工作。由于數(shù)據(jù)庫的前臺操作界面都存儲
34、在【Main.mdb】文件中,因此,鑒于基于Access開發(fā)的數(shù)據(jù)庫的特點,為了使數(shù)據(jù)庫能正常運行,需要將存儲數(shù)據(jù)的表鏈接到【Main.mdb】中,鏈接表的操作方法,有兩種,一種是常規(guī)方法,一種是盟威軟件快速開發(fā)平臺所提供的方法,我們先來講述常規(guī)的操作方法。鏈接表的常規(guī)方法首先,按住鍵盤上的Shift鍵(不可以松開),雙擊鼠標左鍵打開【Main.mdb】文件(【Main.mdb】文件打開之后,方可松開Shift鍵),如若操作沒有失誤,則如下圖所示: 若是沒有出現(xiàn)如上圖一樣的,或類似的界面,而是出現(xiàn)了如第4課所示的平臺登錄界面,則意味著按住Shift鍵的操作失敗或者是按的時間過晚,或是松的太早,
35、或者在中間不小心松開過,這時,可以關閉當前的數(shù)據(jù)庫(即平臺),重新按住Shift鍵再次打開?,F(xiàn)在,我們就可以發(fā)現(xiàn),對比第4課已經(jīng)學習過的內容,按住Shift鍵和不按Shift鍵,打開的【Main.mdb】文件之后顯示的界面,完全不同,這是因為在不按住Shift鍵的情況下,系統(tǒng)會運行盟威軟件快速開發(fā)平臺已經(jīng)預設的自動運行程序,而這些程序的運行,將會將所有的軟件設計和開發(fā)界面隱藏。因此,我們不妨這樣定義按住Shift打開【Main.mdb】文件,開啟的是設計模式,而不按住Shift打開【Main.mdb】文件,則開啟的是運行模式,設計模式是開發(fā)人員所需要使用的,而運行模式則是面向普通的前臺用戶的在
36、開發(fā)完畢,向前臺用戶部署時,則可以通過盟威軟件快速開發(fā)平臺【開發(fā)者工具】節(jié)點下的【開發(fā)者設置】子節(jié)點所提供的功能,利用管理員獨有的權限,將Shift鍵禁用如此一來,則前臺用戶即便按住Shift鍵打開【Main.mdb】文件,也只能顯示前臺登錄界面只有運行模式可用,從而更大限度地保證數(shù)據(jù)庫的安全當然,這種操作是可逆的,當需要再次進行開發(fā)時,管理員可以利用管理員權限再度開啟Shift鍵的功能,從而可以進入設計模式,再次進入設計界面。接下來,我們繼續(xù)鏈接表的工作如上圖所示,界面開啟以后,請單擊左側窗格的按鈕,則如下圖所示:接下來,我們點選其中的【表(B)】,則如下圖所示:接下來,請請依次點擊【外部數(shù)
37、據(jù)】【Access】,如下圖所示:如上圖,單擊【Access】按鈕之后,則如下圖所示:如上圖所示,獲取外部數(shù)據(jù)有兩種方式,第一種是直接將目標數(shù)據(jù)庫中的相關對象,直接導入到當前數(shù)據(jù)庫文件中,還有一種便是將目標數(shù)據(jù)庫文件中的表鏈接到當前數(shù)據(jù)庫文件中我們當然是選擇【通過創(chuàng)建鏈接表來鏈接到數(shù)據(jù)源】,接下來,我們點選【瀏覽(R)】按鈕,則如下圖所示:接下來,拉動左側的垂直滾動條,然后定位到我們的項目文件夾,選擇【Data.mdb】文件,則如下圖所示:接下來,單擊左下角的【打開(O)】按鈕,則如下圖所示:如上圖所示,我們要的目標文件已經(jīng)出現(xiàn)在目標文本框中,其實,在這個位置,如若能準確錄入路徑和文件名,也可
38、以直接錄入。接下來,我們單擊【確定】按鈕,則如下圖所示:在這個【鏈接表】對話框中,已經(jīng)列出了【Data.mdb】數(shù)據(jù)庫中所有的可供鏈接的用戶表(對于Access系統(tǒng)而言,盟威軟件快速開發(fā)平臺所用的系統(tǒng)表也屬于用戶表,但對于盟威軟件快速開發(fā)平臺的用戶而言,這部分Sys_開頭的表屬于平臺系統(tǒng)表,在沒有正確指導的情況下,嚴禁用戶直接修改和刪除),接下來,按住鍵盤上的Ctrl鍵(與按住Shift鍵一樣,中途不能松開),依次點選我們在上一章節(jié)新建的三個用戶表tblBxmx、tblCodelb、blCodeyg,如下圖所示:接下來,單擊【確定】按鈕,則如下圖所示:現(xiàn)在,我們已經(jīng)可以注意到,剛才點選的三個表
39、都已經(jīng)出現(xiàn)在當前的列表中,與其他大部分表略有不同的是,這三個表前面都有一個箭頭的標志沒錯,這就是鏈接表的標識所有針對鏈接表的更新,都會自動地同步到原表中同理,所有針對原表的更新,也會在再次打開鏈接表,或者刷新鏈接表的同時,自動地同步到鏈接表中也就是說,鏈接表本身并不存儲任何數(shù)據(jù),鏈接表只是原表的一個影子這也有力地保證了數(shù)據(jù)庫的安全。接下來,我們將講述盟威軟件快速開發(fā)平臺所提供的鏈接表的方法。鏈接表的平臺方案為了使教學更加直觀,首先,我們先將剛才通過常規(guī)方法鏈接到【Main.mdb】文件中的3個表刪除,刪除的方法是:任意選中3個鏈接表中的1個,然后,單擊鼠標右鍵,選擇【刪除(L)】命令,如下圖所
40、示:執(zhí)行刪除之后,就會彈出如下對話框,如下圖所示:此時,只須單擊【是(Y)】按鈕加以確認,就可以完成刪除操作。然后,再依次刪除剩下的2個鏈接表在這里,需要值得注意的是,【Main.mdb】本身擁有的鏈接表(即是平臺所用的鏈接表)嚴禁刪除,只允許刪除我們自己鏈接過來的鏈接表。此外,刪除鏈接表只是刪除原表的鏈接,并不會刪除【Data.mdb】文件中的原表,這一點請大家放心。但是,如若刪除了【Data.mdb】中的原表,那么,鏈接到【Main.mdb】數(shù)據(jù)庫的鏈接表雖然不會自動刪除,但是也會成為無效的鏈接表,這一點也請大家注意。我們將鏈接表全部刪除之后,接下來, 單擊左側窗格的按鈕,然后在彈出的下拉
41、列表中選擇【窗體(F)】,則如下圖所示:我們可以注意到,這里已經(jīng)有了不少Sys開頭和_開頭的窗體,這些都是盟威軟件開發(fā)平臺所賴以運行的平臺系統(tǒng)窗體。接下來,我們點選其中一個名為【SysFrmLogin】窗體,然后直接雙擊該窗體,或者單擊鼠標右鍵,選擇【打開(O)】命令,則會彈出第4課中已經(jīng)非常熟悉的自動登錄界面,登錄完成之后,如下圖所示:我們可以看到,在左側樹形菜單的【開發(fā)者工具】節(jié)點下有一個【快速創(chuàng)建鏈接表】的子節(jié)點是的,就是這個節(jié)點,接下來,雙擊【快速創(chuàng)建鏈接表】子節(jié)點,則會彈出一個對話框,如下圖所示:在該對話框中,我們可以清晰看到【Data.mdb】中所有的用戶表,接下來,請按住鍵盤上的
42、Ctrl鍵,然后依次點選tblBxmx、tblCodelb、blCodeyg,如下圖所示:然后,單擊【創(chuàng)建】按鈕,就會彈出創(chuàng)建成功的提示信息。這個時候,鏈接表就已經(jīng)創(chuàng)建成功了這種由盟威軟件快速開發(fā)平臺所提供的方法,并不需要進入平臺的設計模式,在平臺的運行模式下,只要擁有管理員的權限,或者擁有管理員所分配的相關權限,都可以進行操作而本教程基于設計模式來講述,只是為了表述的方便而已。接下來,關閉【快速創(chuàng)建鏈接表】對話框,然后,再次單擊左側窗格的按鈕,然后在彈出的下拉列表中選擇【表(B)】,則如下圖所示:這個時候,我們可以清晰到看到,我們創(chuàng)建的鏈接表已經(jīng)出現(xiàn)在表的列表之中了,與Access 2003
43、不同的是,由于左側的增加了可以便捷查看當前對象的窗格,使我們切換、查看數(shù)據(jù)庫對象的的速度比以前快了很多,路徑也更為簡潔盡管它占用了一點空間,但是優(yōu)點還是很明顯的當然,我們可以根據(jù)當前的工作的需要,隨時開啟或者關閉該窗格,應該說,這是一個值得贊賞的改進。好,進行到這里,鏈接表的內容,就已經(jīng)講完了,而本教程關于表的操作的內容,也講完了,如若您還有所疑惑,請通過前面介紹的三種方式尋求解決方案,或向我們反饋,以便我們可以進一步地對本教程進行優(yōu)化和擴充。6 查詢的設計學習要求:本節(jié)預計學習課時為0.5小時,重點是:學會創(chuàng)建一個查詢。學習說明在前面的課程中,為了講述的方便,我們已經(jīng)往tblCodelb表中
44、手工錄入了一些測試數(shù)據(jù),現(xiàn)在,為了以后的課程講述的方便,我們仍然需要錄入一些數(shù)據(jù)首先,請按住【Shift】鍵,雙擊打開【Main.mdb】文件當前,如若左側默認顯示的不是【表】的列表,則單擊左側窗格的按鈕,在彈出的下拉列表中選擇【表(B)】,然后,雙擊打開鏈接表tblCodeyg,錄入一些測試數(shù)據(jù)為了更好地學習,在學習的過程中,錄入的測試數(shù)據(jù),最好與本教程中錄入的測試數(shù)據(jù)保持一致。錄入完成之后,如下圖所示:接下來,關閉tblCodeyg,然后雙擊打開tblBxmx表,錄入一些測試數(shù)據(jù)(lbID和ygID字段通過點選下拉列表來完成錄入),如下圖所示:需要強調的是,按照原則,是嚴禁用戶直接往表中錄
45、入數(shù)據(jù)的,但我們?yōu)榱吮硎龅姆奖悖蜁呵忆浫胍恍?shù)據(jù)需要值得注意的是,手工錄入,因為缺少輸入的輔助手段,也缺少一些相應的約束措施,因此,很容易出錯,因而在錄入的過程中,請嚴格按照遵守表設計說明書(第3課)中所提到的全部規(guī)范,比如,編號字段的規(guī)則(報銷編號的編號規(guī)則是:首字母M+年份4位+月份2位+4位遞增流水號)如若錄入的數(shù)據(jù),不符合表設計說明書的規(guī)則,由于表中字段的【字段屬性】中的約束仍然有效,因此,系統(tǒng)可能會報錯,導致無法完成正常的錄入(表的屬性部分,只能執(zhí)行表設計說明書的部分基本約束,還有一些約束,需要借助窗體的控件或相關代碼來完成)。此外,還有一點需要說明對于當前的錄入,每一個表的首個編
46、號字段,固然是需要手工來填寫的,但在開發(fā)完成之后,該編號字段將交由系統(tǒng)托管,所以,這項繁瑣的工作,并不再需要人工來干預,所以,毋須為此多生疑慮。當前,我們是在鏈接表中錄入數(shù)據(jù)的,為了檢驗鏈接表的效果,錄入完成之后,可以將當前已經(jīng)打開的【Main.mdb】關閉,然后再打開【Data.mdb】文件,一一檢查剛才錄入數(shù)據(jù)的2個表,可以看到,剛才錄入的數(shù)據(jù)已經(jīng)被同步過來了,如下圖所示:如上圖所示,我們可以發(fā)現(xiàn),有一個現(xiàn)象,好像有些異常那就是tblBxmx表中的lbID和ygID字段,存儲的好像并不是編號,而是我們所點選的選項值,如此一來,好像完全違背了我們先前反復強調,并加以詳細解說的設計目標,也不符
47、合表設計說明書的規(guī)范為什么這么說呢?比如,lbID字段,我們知道,其【字段大小】是3個字符,而其中的一個值,比如電話費,三個中文漢字,按照常識,一個中文漢字的長度是2個字符(字母和數(shù)字都是1個字符),那么,電話費這三個漢字要想存儲在表格中,其對應的【字段大小】,最小也不能低于6個字符,但是現(xiàn)在卻存儲在一個【字段大小】只有3字符的字段中,這不是很奇怪么?ygID字段也是如此,其【字段大小】也是3字符,其中任意一個,即便只有2個中文漢字的姓名也是不能容納的。其實,這種表面看起來的異常,只是假象實際上,這兩列數(shù)據(jù),真正存儲的數(shù)據(jù),都是貨真價實的編號,而并非實際的中文字符,為了還原其本來的面目,請按以
48、下的方法操作:關閉當前已經(jīng)打開的tblBxmx表,然后點選tblBxmx表,然后,單擊鼠標右鍵,選擇【設計視圖(D)】命令,或者再單擊工具欄上的按鈕,然后選擇【設計視圖(D)】命令,如下圖所示: 執(zhí)行了【設計視圖(D)】命令之后,就可以進入tblBxmx表的設計視圖,接下來,我們選中l(wèi)bID字段,然后,將其【字段屬性】由默認的【常規(guī)】選項卡,切換到【查閱】選項卡在第5課中,我們已經(jīng)很熟悉這個位置了。接下來,現(xiàn)在我們將【顯示控件】由組合框再改回文本框,然后,ygID字段,也同樣如此操作,完成之后,保存表設計,然后關閉tblBxmx表,并再次雙擊打開tblBxmx表,則如下圖所示: 進行到這里,真
49、相就大白于天下了,先前這兩列,顯示為中文字符,那是因為表在打開的時候,就已經(jīng)根據(jù)字段的【字段屬性】中【查閱】選項卡的屬性設置,執(zhí)行了相應的計算,所以,計算完成之后,這兩列實際上顯示的都是編號字段所對應的實質性內容(類別名稱和員工姓名),這樣就能提高表的可讀性,不然,如上圖一樣的表,可讀性極差,其中的數(shù)據(jù),完全讓人不知所云這也是使用組合框的優(yōu)勢所在這是通過表的【字段屬性】設置來完成的事實上,這個功能,通常是由【查詢】這個數(shù)據(jù)庫對象來完成的,而配置字段的【字段屬性】中【查閱】選項卡的相關屬性值,與建立一個比較簡單的查詢的工作,幾乎也是完全一樣的,接下來,我們就來講述查詢的創(chuàng)建。第一個查詢的設計與創(chuàng)
50、建在前面一節(jié)的課程中,我們已經(jīng)修改了tblBxmx表中l(wèi)bID和ygID字段的【字段屬性】,即將【查閱選項卡】中的【顯示控件】由組合框改回文本框為了本課講述的方便,我們暫時保持這樣的設置接下來,我們關閉【Data.mdb】文件,然后再打開【Main.mdb】文件,開始講述查詢的創(chuàng)建。首先,我們要明白什么是查詢比如剛才所看到的tblBxmx表,在未啟用【字段屬性】中【查閱】選項卡的相關屬性的情況下,ygID字段(員工編號)和lbID字段(類別編號),都是一些讓人難以閱讀的編號,如若是以這樣的數(shù)據(jù),直接展示給前臺用戶,那是極不友好的,甚至難以使用,因此,我們要進行一些數(shù)據(jù)的整合的工作也就是說,要建
51、立查詢,通過計算,將不友好的、難以閱讀的編號字段,替換成比較友好的,可以直接閱讀的相關內容,這就是查詢最基本的功能就當前的情況的來說,就是將ygID字段(員工編號)和lbID字段(類別編號)的編號,替換成可以直觀理解的員工姓名和類別名稱。接下來,我們將介紹如何通過查詢的建設,來實現(xiàn)上述的設計目標。首先,在已經(jīng)打開的【Main.mdb】數(shù)據(jù)庫文件中(按住Shift鍵打開),單擊左側窗格的按鈕,在彈出的下拉列表中選擇【查詢(Q)】,則如下圖所示:現(xiàn)在,我們可以看到,當前的數(shù)據(jù)庫中,尚未建立任何的查詢,接下來,我們切換到【創(chuàng)建】工作區(qū),然后單擊【查詢設計】按鈕,則如下圖所示:對于熟悉Access 2
52、003的讀者來說,這些操作路徑可能有些陌生,可并不牽涉到什么實質性的技術問題,所以,適應一下,就可以很快習慣的。我們在執(zhí)行了【查詢設計】命令之后,就直接開啟了一個新的查詢的創(chuàng)建,并進入其設計視圖,如下圖所示:類似的界面,我們已經(jīng)在第4課中見過了,無非是激活這個界面的入手處有所不同接下來,我們按住鍵盤上的Ctrl鍵,然后依次點選tblBxmx、tblCodelb、tblCodeyg,然后再單擊【添加(A)】按鈕,將當前的3個表添加到查詢的設計區(qū)域,接下來,關閉【顯示表】對話框,則如下圖所示:我們注意到,當表添加完成之后,系統(tǒng)已經(jīng)自動地建立了關聯(lián)這種智能關聯(lián),很清晰地勾勒出了不同的表之間的結構。接
53、下來,我們依次把tblBxmx表的mxID、bxrq,tblCode表的lbmc,tblCodeyg表的ygxm,tblBxmx表的bxje、bxzy、czsj添加到設計窗格中,完成之后,如下圖所示:在第4課中,我們建立類似的查詢只是為了生成我們所需要的SQL代碼,所以,當時的查詢設計,并沒有保存,現(xiàn)在則有所不同接下來,單擊按鈕,或者依次單擊【文件】【保存】命令,則會彈出【另存為】對話框,如下圖所示: 接下來,刪除默認的名稱,然后將該查詢命名為:qryBxmx,然后,單擊【確認】按鈕,完成保存這樣,一個很實用的查詢就創(chuàng)建完畢了,這個時候,我們可以注意到,左側窗格中已經(jīng)出現(xiàn)了我們剛才新建的查詢對
54、象,如下圖所示:接下來,我們選中查詢列表中的qryBxmx,然后單擊鼠標右鍵,在彈出的右鍵菜單中選擇【打開(O)】命令,或者單擊工具欄上的按鈕,選擇其中的【數(shù)據(jù)表視圖(H)】命令,則如下圖所示:執(zhí)行了【數(shù)據(jù)表視圖(H)】命令之后,如下圖所示:這個時候,我們就可以發(fā)現(xiàn),查詢建立完成之后,實際的瀏覽效果,實際上和早先啟用了字段的【字段屬性】的【查閱】選項卡相關屬性的tblBxmx表幾乎是一樣,但是,也不能就因此認為查詢是可以被第4課中的相關【查閱】屬性所代替的我們要知道,剛才所建立的,只是最簡單的查詢當我們需要建立一些比較復雜的查詢,比如聯(lián)合查詢,比如附帶比較復雜計算條件(比如分組、過濾、匯總)的
55、選擇查詢的時候,這就不是表的字段的【查閱】選項卡中的相關屬性所附帶的那一點功能所能完成的了。當然,表中字段的【字段屬性】還是很重要的,比如,以tblBxmx表為例,如若其字段的【字段屬性】中【常規(guī)】選項卡的【標題】屬性沒有配置,則瀏覽起來,如下圖所示(可以先將【Data.mdb】文件中的tblBxmx表中【字段屬性】中【常規(guī)】選項卡的【標題】屬性先行全部刪除,以達到以下的瀏覽效果):如上圖所示,這樣的顯示效果,比剛才更加難以閱讀,除了設計者和開發(fā)者,普通用戶很難知道每一列是何意比如bxzy數(shù)據(jù)列,很難知道這一列究竟是代表什么,由此可見,每一個對象都有每一個對象的特征和重要性,因此,我們需要同等
56、重視,切不可顧此失彼。好了,由于本教程只是初級教程,所以,查詢的設計,就講述的這里,接下來,恢復所有的配置,以便為為下一課做好準備。需要恢復的主要有兩項:第一項:恢復tblBxmx表的【字段屬性】中【常規(guī)】選項卡的【標題】屬性的值;第二項:恢復tblBxmx表的【字段屬性】中【查閱】選項卡中相關屬性的設置。接下來,我們就要學習窗體的設計和制作,這也是整個數(shù)據(jù)庫系統(tǒng)開發(fā)過程中,難度最大,耗時最多的環(huán)節(jié)。7.1 員工信息列表及與平臺整合(常規(guī)設計)學習要求:本節(jié)預計學習課時為1小時,重點是:a.創(chuàng)建顯示數(shù)據(jù)的子窗體及相關窗體、控件屬性的調整;b.子窗體應用于快速開發(fā)平臺。學習說明經(jīng)過前面幾課的學習,我們已經(jīng)初步掌握了表和查詢的設計和實現(xiàn),接下來,我們就可以學習和用戶關系最大的數(shù)據(jù)庫對象窗體的設計和實現(xiàn),事實上,對于普通用戶而言,他們唯一可以直接接觸的對象,只有兩類,一類是報表,另一類,就是窗體。在前面的課程中,窗體,我們已經(jīng)見過多次了比如,登錄界面,就是一個已經(jīng)完成開發(fā)的窗體,快速鏈接表對話框、導航菜單編輯器等,也是窗體也就是說,所謂窗體,就是用戶操作界面的一部分(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人電車租車合同范本
- 公司民間借款合同范本
- 辦公裝修協(xié)議合同范例
- 公路養(yǎng)護補充協(xié)議合同范本
- 二手車銷售中心合同范本
- 健身俱樂部就業(yè)合同范本
- 勞務薪酬合同范例
- 2025年度家庭寵物養(yǎng)護保姆服務合同
- 公司如資金合同范本
- 兼職勞務合同范本乙方
- 病例展示(皮膚科)
- GB/T 39750-2021光伏發(fā)電系統(tǒng)直流電弧保護技術要求
- 教科版五年級科學下冊【全冊全套】課件
- (更新版)HCIA安全H12-711筆試考試題庫導出版-下(判斷、填空、簡答題)
- 糖尿病運動指導課件
- 完整版金屬學與熱處理課件
- T∕CSTM 00640-2022 烤爐用耐高溫粉末涂料
- 304不銹鋼管材質證明書
- 民用機場不停航施工安全管理措施
- 港口集裝箱物流系統(tǒng)建模與仿真技術研究-教學平臺課件
- 新教科版2022年五年級科學下冊第2單元《船的研究》全部PPT課件(共7節(jié))
評論
0/150
提交評論