?。?、VFP能做什么
在日常的工作、生活中,我們要和很多數(shù)據(jù)打交道。比如我們每個月領(lǐng)的工資條,里面有姓名、部門、基本工資、獎金、扣款等數(shù)據(jù)。
再比如我們在圖書館借書,借書證號碼、借書日期、書的名字等,又是一大堆數(shù)據(jù)。
現(xiàn)在我們都是用計(jì)算機(jī)來管理這些數(shù)據(jù)。這么多數(shù)據(jù),計(jì)算機(jī)是怎么記住的呢?怎樣才能準(zhǔn)確地查到這些信息呢?
告訴你,這些數(shù)據(jù)都存放在數(shù)據(jù)庫里面,數(shù)據(jù)的查詢和管理也是靠數(shù)據(jù)庫來完成的。
什么是數(shù)據(jù)庫呢?簡單地理解,“數(shù)據(jù)庫”就是按一定規(guī)律組織起來,保存在計(jì)算機(jī)中的數(shù)據(jù)集合。
比如這個工資表,它存放在數(shù)據(jù)庫中是這樣的,很有規(guī)律,這一列是職工的姓名,這一列是職工的基本工資;再看,這一行是趙宏工資條上的內(nèi)容,這一行是王珊工資條上的內(nèi)容。
原來數(shù)據(jù)庫是這樣的!那我們生活中是不是有很多這樣的例子呢?比如我們的通訊錄,上面記著同事或朋友的姓名、工作單位、電話、郵編等數(shù)據(jù),這也能組成一個數(shù)據(jù)庫。
好,知道了什么是數(shù)據(jù)庫,接下來看學(xué)習(xí)了數(shù)據(jù)庫有什么好處。還以這個工資表為例,借助數(shù)據(jù)庫,我們可以很方便地管理這些數(shù)據(jù),比如,可以統(tǒng)計(jì)出工資超過1000元的所有職工,還可以列出“生產(chǎn)”部門所有人員的工資表,或者可以自動將每名職工的基本工資漲上100元,甚至可以自動從每個人的工資中扣除個人所得稅。
既然數(shù)據(jù)庫有這么強(qiáng)大的功能,你是不是也想學(xué)一學(xué)?不要認(rèn)為數(shù)據(jù)庫很高深,其實(shí)學(xué)起來是很容易的。
我們這里主要講解Visual FoxPro 6.0中文版的使用,通過學(xué)習(xí),掌握數(shù)據(jù)庫的一些基本知識,如表的建立,表與表之間的關(guān)系,數(shù)據(jù)的索引和查詢,表單和報(bào)表的建立等。
Visual FoxPro簡稱VFP,是Microsoft公司推出的新版數(shù)據(jù)庫開發(fā)軟件,用它來開發(fā)數(shù)據(jù)庫,既簡單又方便,下面我們就一起學(xué)習(xí)一下。
?。?、什么是表
我們先看一下VFP長得什么樣。單擊“開始”菜單,選擇“程序”,選“Microsoft Visual FoxPro 6.0”,再選這條帶狐貍頭圖標(biāo)的命令,Visual FoxPro就啟動了。
啟動后出現(xiàn)一個向?qū)М嬅妫c(diǎn)“關(guān)閉此屏”,就進(jìn)入了Visual FoxPro的界面。
我們前面提到的數(shù)據(jù),有很多都是以表格形式出現(xiàn)的,這些數(shù)據(jù)保存在數(shù)據(jù)庫軟件中,就叫表,是一個擴(kuò)展名為dbf的文件。
我們先打開一個建好的表。點(diǎn)工具欄上的“打開”按鈕,選擇文件類型為“表”,選中“工資表.dbf”文件,點(diǎn)“確定”按鈕。雖然屏幕上看不到什么變化,實(shí)際這個表已經(jīng)打開了。選擇“顯示”菜單下的第一項(xiàng),工資表就出現(xiàn)了。
前面我們已經(jīng)見過這個工資表了,下面我們就用它來介紹一些數(shù)據(jù)庫的基本知識。
表是一個二維數(shù)組,它是由行和列組成的。表中的行和列都有專門的叫法。表中的每一列叫做一個“字段”。每個字段包含某一類的信息,是表中所有行共有的屬性。比如工資表中的“姓名”字段,所以行中的這個位置都是一個人的名字,而不能是性別或身高信息;再看“部門”字段,表中的每一個人都有所屬的部門,部門可以相同也可以不同,但卻代表了一類信息。
我們把表中的每一行叫做一個“記錄”,每一個記錄包含這行中的所有信息,比如一個職工的“姓名”、所屬“部門”、“基本工資”、“獎金”等,也就是職工工資條上的全部信息。
* 表中一個特別重要的概念,無論是哪一種數(shù)據(jù)庫,都要從建立表開始。如果把Visual FoxPro應(yīng)用程序比做是一座大廈的話,那么,表就是其中的一塊塊磚瓦。只有建好了各種表,才能在此基礎(chǔ)上建立索引或查詢,生成表單或報(bào)表。
在VFP中,可能有很多張表。比如這張職工自然情況表,里面有員工的姓名、性別、政治面貌、通訊地址等內(nèi)容。很多張表可以組成一個數(shù)據(jù)庫,數(shù)據(jù)庫文件的擴(kuò)展名是dbc,它的主要作用是更好地分類管理表。也有不包含在數(shù)據(jù)庫中的表,叫做自由表,使用方法與數(shù)據(jù)庫基本相同。
好,剛才我們講了幾個概念,再重復(fù)一下:數(shù)據(jù)庫文件是很多張表組成的,每張表是一個二維數(shù)組,表中的列叫字段,表中的行叫記錄,記住了嗎?下面的講解中我們會經(jīng)常用到它們。
?。?、建立表的結(jié)構(gòu)
下面我們就來建立一張洪恩公司產(chǎn)品信息的表,包括產(chǎn)品的名稱、類別、價(jià)格及產(chǎn)品的圖片等信息,這幾項(xiàng)都是相對獨(dú)立的,所以考慮建立四個字段。
單擊工具欄上的“新建”按鈕,彈出一個新建窗口,里面列出了很多文件類型,我們選擇“表”,再點(diǎn)一下右上角的“新建文件”大按鈕。這時系統(tǒng)詢問新文件的名字及保存位置。選擇D盤,在對話框中點(diǎn)“新文件夾”圖標(biāo),輸入文件夾的名字database,用來存放數(shù)據(jù)庫開發(fā)過程中的所有文件。再新建一個文件夾data,用來存放表文件。給表命名為product.dbf,單擊“保存”,出現(xiàn)“表設(shè)計(jì)器”窗口。表設(shè)計(jì)器用來設(shè)計(jì)表的結(jié)構(gòu),包括字段名、類型、寬度等屬性。
現(xiàn)在光標(biāo)在“字段名”文本框中,我們輸入字段的名字“產(chǎn)品名稱”。字段名前面有一個垂直雙向箭頭,表示當(dāng)前行。
單擊“類型“下拉列表框,里面有很多種字段類型,字段類型是指輸入數(shù)據(jù)必須具備的格式。(查看 常見的類型)
選擇“字符型”,表示產(chǎn)品的名稱是當(dāng)作字符串來處理的。
在“寬度”列中,設(shè)置以字符為單位的列寬,使字段的寬度足夠容納將要顯示的信息內(nèi)容。注意,一個漢字需占兩個字符。在寬度框中輸入12,表示產(chǎn)品名稱不超過12個字節(jié),也就是6個漢字。
同樣,我們建立其他字段。
字段名 類型 寬度 小數(shù)位數(shù)
類別 字符型 10
價(jià)格 數(shù)字型 6 2
圖片 通用型 4
其中,“價(jià)格”字段為數(shù)字型,意思是每種產(chǎn)品的價(jià)格是一個數(shù)字,寬度為6。小數(shù)位數(shù)為2,這又是什么意思呢?比如價(jià)格為125元,在設(shè)置小數(shù)位數(shù)為2后,產(chǎn)品價(jià)格后面就保留兩位小數(shù),即125.00元。
“圖片”字段設(shè)置為通用型,表示存放的內(nèi)容是一個OLE對象,默認(rèn)寬度為4,可以不做改動。
OLE是什么意思呢?OLE是英文“Object Link and Embed”的縮寫,意思是對象的鏈接和嵌入。這里所說的對象,不是指表單、文本框之類的東西,而是指VFP以外的東西,比如一幅圖片、一段聲音、一個Excel圖表、一個Word文件等等。
這就說明在通用型字段中可以存放圖片,還可以放聲音、圖表等對象。
很令人興奮吧,VFP中可以放入這些東西,也就是說我們所開發(fā)的數(shù)據(jù)庫軟件將具有多媒體功能,是不是帥呆了!
4、索引的建立
我們注意到,在小數(shù)位數(shù)后面有一項(xiàng)內(nèi)容叫“索引”,索引是什么呢?
我們都知道,一本書中有很多章節(jié),為了快速找到某一節(jié)的內(nèi)容,書中都有目錄。同樣,在數(shù)據(jù)庫中也有這樣的目錄,叫做索引。書中的目錄是一份頁碼的列表,指向書中的頁號。表中的索引是一個記錄號的列表,指向表中待處理的記錄,并確定了記錄的處理順序。
下面我們?yōu)椤爱a(chǎn)品名稱”字段添加索引,單擊“索引”框旁的小箭頭,選擇一種排序方式,就選升序吧。
有了索引,可以幫我們對數(shù)據(jù)進(jìn)行排序,以便加速檢索數(shù)據(jù)的速度;同時顯示、查詢或者打印記錄的速度也會快得多。
單擊“索引”選項(xiàng)卡,可以看到剛建立的索引,索引的名字就是產(chǎn)品名稱,類型為普通索引,升序排列。
* 注意:索引并不會改變表中所存儲數(shù)據(jù)的順序,它只改變了Visual FoxPro讀取每條記錄的順序。一個表可以建立好幾個索引,每一個索引都代表一種處理記錄的順序。
建好表的結(jié)構(gòu)后,單擊“確定”,系統(tǒng)提示輸入記錄,點(diǎn)“是”。
現(xiàn)在我們可以向里面輸入數(shù)據(jù)了。
好了,第一章的講解到此結(jié)束。我們主要講了表的基本概念、如何確定表的結(jié)構(gòu)等內(nèi)容。
美桌網(wǎng)提醒您
本站永久網(wǎng)址 http://www.win4000.com聯(lián)系客服