第三章表的基本操作_第1頁(yè)
第三章表的基本操作_第2頁(yè)
第三章表的基本操作_第3頁(yè)
第三章表的基本操作_第4頁(yè)
第三章表的基本操作_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、VisualFoxPro 程序設(shè)計(jì)教程程序設(shè)計(jì)教程 表表 操操 作作一、數(shù)據(jù)表文件的命名規(guī)則:一、數(shù)據(jù)表文件的命名規(guī)則: 1、文件名必須符合Windows文件的命名規(guī)則; 2、不能使用AJ十個(gè)字母之一單獨(dú)作為數(shù)據(jù)表文件名; 3、擴(kuò)展名默認(rèn)使用dbf。二、表中字段名的命名規(guī)則:二、表中字段名的命名規(guī)則: 1、字段名可以由字母、漢字、數(shù)字及下劃線組成,不可包 含空格和其它非法字符。 2、字段名必須以字母或漢字開(kāi)頭。41 一、建立表結(jié)構(gòu)一、建立表結(jié)構(gòu) 方法一:方法一:1、菜單方式:利用表設(shè)計(jì)器定義數(shù)據(jù)表的結(jié)構(gòu); 2、命令方式:格式:格式:CREAT |? 方法二:方法二:利用表向?qū)?chuàng)建表結(jié)構(gòu); 二、

2、數(shù)據(jù)表的打開(kāi)和關(guān)閉二、數(shù)據(jù)表的打開(kāi)和關(guān)閉 表的打開(kāi):表的打開(kāi): 1、菜單方式 2、命令方式:格式:格式:USE |? 前一頁(yè)后一頁(yè) 功能:功能:打開(kāi)指定的表文件,使其成為當(dāng)前表。 說(shuō)明:說(shuō)明:若該表文件含備注字段,則其對(duì)應(yīng)的備注文 件(FPT)也同時(shí)被打開(kāi); 文件名中可不寫(xiě)出擴(kuò)展名,系統(tǒng)默認(rèn)為DBF。 表的關(guān)閉:表的關(guān)閉: 格式格式1:USE 功能:功能:關(guān)閉當(dāng)前工作區(qū)中打開(kāi)的數(shù)據(jù)表。 格式格式2:CLOSE ALL 功能:功能:關(guān)閉所有打開(kāi)的文件,包括表文件。 四、數(shù)據(jù)表結(jié)構(gòu)的修改四、數(shù)據(jù)表結(jié)構(gòu)的修改 1、菜單方式 2、命令方式:MODIFY STRUCTRUE 功能:功能:修改當(dāng)前打開(kāi)的表

3、文件的結(jié)構(gòu)。使用命令的 前提是表必須事先打開(kāi)。 五、表結(jié)構(gòu)的顯示五、表結(jié)構(gòu)的顯示 格式格式1:LIST STRUCTRUE 不分屏顯示 2:DISPLAY STRUCTRUE 分屏顯示 前一頁(yè)后一頁(yè) 功能:功能:顯示當(dāng)前表文件的結(jié)構(gòu)。42 數(shù)據(jù)表記錄的輸入與查看數(shù)據(jù)表記錄的輸入與查看 一、數(shù)據(jù)表記錄的輸入一、數(shù)據(jù)表記錄的輸入 1、創(chuàng)建表時(shí)立即輸入數(shù)據(jù) 2、以追加方式輸入數(shù)據(jù) 方法一:方法一:菜單方式 方法二:方法二:命令方式 格式:格式:APPEND BLANK 功能:功能:在當(dāng)前數(shù)據(jù)表文件的末尾追加新的記錄。 說(shuō)明:說(shuō)明:不選用BLANK,進(jìn)入輸入記錄狀態(tài),可追加 若干記錄; 選用BLANK

4、,不進(jìn)入輸入記錄狀態(tài),只追加 一條空記錄。 設(shè)置:設(shè)置:SET CARRY ON:將上一條記錄的內(nèi)容復(fù)制到 新追加的記錄中。 SET CARRY OFF: 默認(rèn)設(shè)置,與ON狀態(tài)相反。 前一頁(yè)后一頁(yè) 二、數(shù)據(jù)記錄的查看二、數(shù)據(jù)記錄的查看 格式格式LIST/DISPLAY FIELDS FOR |WHILE OFF TO PRINT 功能:功能:顯示當(dāng)前表文件的記錄。 說(shuō)明:說(shuō)明:范圍:ALL、NEXT 、RECORD 、REST 第二個(gè)短語(yǔ)為顯示字段名表中指定的字段,不選 則顯示全部字段。 FOR/WHILE短語(yǔ)為顯示滿(mǎn)足條件的記錄。 OFF短語(yǔ),選用則不顯示記錄號(hào)。對(duì)備注字段,只有在中明確指定

5、,才 能列出它的具體內(nèi)容。 注意:注意:LIST與DISP指針變化的不同處。 設(shè)置設(shè)置: SET HEADING ON 功能:功能:顯示字段名 SET HEADING OFF 功能:功能:不顯示字段名前一頁(yè)后一頁(yè)43/ 44 數(shù)據(jù)的顯示和修改方式數(shù)據(jù)的顯示和修改方式 一、菜單方式一、菜單方式(編輯、瀏覽) 二、命令方式二、命令方式 1、編輯方式 格式:格式:EDIT | CHANGE 范圍FIELDS字段名表 FOR|WHILE 功能:功能:從滿(mǎn)足條件的第一條記錄開(kāi)始,順序修改數(shù)據(jù)表的記 錄。 說(shuō)明:說(shuō)明:指定字段名表時(shí),只能修改指定的字段,否則可修改 所有字段。 修改備注字段的內(nèi)容必須進(jìn)入備

6、注字段編輯狀態(tài)。 2、瀏覽方式 格式:格式:BROWSE FIELDS FOR 功能:功能:顯示、修改、邏輯刪除表中的記錄。 說(shuō)明:說(shuō)明:與EDIT同。前一頁(yè)后一頁(yè) 3、成批替換命令 格式:格式:REPLACE WITH , WITH , FOR WHILE 功能:功能:在當(dāng)前數(shù)據(jù)表中,用的值替換指定字段的 原值。 說(shuō)明:說(shuō)明:命令中無(wú)和時(shí),只替換當(dāng)前記錄。 不能替換M型字段。 可同時(shí)對(duì)多個(gè)字段進(jìn)行替換。 WITH 兩邊的數(shù)據(jù)類(lèi)型必須一致。45 數(shù)據(jù)表中記錄的定位與插入數(shù)據(jù)表中記錄的定位與插入(菜單方式) 一、記錄指針定位一、記錄指針定位 當(dāng)前記錄:指針指向的記錄。 注意:注意:新打開(kāi)一個(gè)數(shù)據(jù)

7、表時(shí),指針指向首記錄。 1、絕對(duì)定位 格式:格式:GO/GOTO TOP 前一頁(yè)后一頁(yè) GO/GOTO BOTTOM GO 功能:功能:將記錄指針定位到指定位置。 說(shuō)明:說(shuō)明:文件頭的記錄號(hào)與首記錄相同。 文件尾的記錄號(hào)為最大記錄號(hào)加1。 的值在1到最大記錄號(hào)之間。 2、相對(duì)定位 格式:格式:SKIP 功能:功能:將指針相對(duì)于當(dāng)前記錄向前或向后移動(dòng)由的值所指定的條數(shù)。 說(shuō)明:說(shuō)明:數(shù)值表達(dá)式的值為正,向后移;其值為負(fù),向 前移。 SKIP=SKIP 1。 3、條件查詢(xún)定位 格式格式1:LOCATE FOR|WHILE 前一頁(yè)后一頁(yè) 功能:功能:在當(dāng)前數(shù)據(jù)表中查找滿(mǎn)足的第一條記錄,找到 后指針定

8、位于該記錄。 格式格式2:CONTINUE 功能:功能:繼續(xù)查找下一條滿(mǎn)足的記錄,找到后定位于該 記錄。 說(shuō)明:說(shuō)明:CONTINUE命令必須用在LOCATE 命令之后,不能單 獨(dú)使用。 二、數(shù)據(jù)記錄的插入二、數(shù)據(jù)記錄的插入 格式:格式:INSERT BLANK BEFORE 功能:功能:在當(dāng)前數(shù)據(jù)表文件的指定位置插入一條新記錄。 說(shuō)明:說(shuō)明:插入時(shí),必須先定位。 選,插入一條空記錄,不進(jìn)入記錄輸入 狀態(tài); 不選則進(jìn)入記錄輸入狀態(tài),一次可插入多條記錄。 選,在當(dāng)前記錄之前插入,否則在當(dāng)前 記錄之后插入。 前一頁(yè)后一頁(yè) 記錄插入后,記錄號(hào)自動(dòng)更新。 注意:注意:INSERT與APPEND 的區(qū)別

9、。46 刪除和恢復(fù)表中的數(shù)據(jù)刪除和恢復(fù)表中的數(shù)據(jù) 1、邏輯刪除表中的記錄(菜單方式) 格式:格式:DELETE FOR|WHILE 功能:功能:對(duì)當(dāng)前表中指定記錄邏輯刪除,即打上刪除標(biāo)記*。 說(shuō)明:說(shuō)明:不選用和則只刪除當(dāng)前記錄。 開(kāi)關(guān)設(shè)置:開(kāi)關(guān)設(shè)置: SET DELETE OFF:帶刪除標(biāo)記的記錄照常參與各種操作; 此為默認(rèn)設(shè)置。 SET DELETE ON: 當(dāng)范圍選ALL或相當(dāng)于ALL時(shí),不操作帶刪除標(biāo)記的記錄。 當(dāng)范圍選RECORD 或當(dāng)前記錄時(shí),帶刪除標(biāo)記的記 錄照常操作。 當(dāng)范圍選NEXT 或REST時(shí),不操作當(dāng)前記錄以后的 帶刪除標(biāo)記的記錄。 前一頁(yè)后一頁(yè) 2、恢復(fù)表中邏輯刪除的

10、記錄 格式:格式:RECALL FOR|WHILE 功能:功能:去掉當(dāng)前表中指定內(nèi)滿(mǎn)足條件的記錄的*號(hào)。 說(shuō)明:說(shuō)明:不選范圍、條件時(shí)只恢復(fù)當(dāng)前記錄。 無(wú)論SET DELETE ON|OFF均可恢復(fù)指定記錄。 3、物理刪除表中的記錄 格式:格式:PACK 功能:功能:刪除當(dāng)前表中帶*的記錄,并重新整理數(shù)據(jù)表,記 錄號(hào)重新排列。 說(shuō)明:說(shuō)明:物理刪除后的記錄不能恢復(fù)。 4、物理刪除當(dāng)前表中全部記錄 格式:格式:ZAP 說(shuō)明:說(shuō)明:等價(jià)于DELE ALL,PACK兩條命令。 補(bǔ)充:補(bǔ)充:建立數(shù)據(jù)表的其它方法 一、表結(jié)構(gòu)一、表結(jié)構(gòu) 的復(fù)制的復(fù)制 前一頁(yè)后一頁(yè) 格式:格式:COPY STRUCTRUE

11、 TO FIELDS 功能:功能:將當(dāng)前數(shù)據(jù)表的結(jié)構(gòu)復(fù)制到只有結(jié)構(gòu)沒(méi)有記錄的新表 文件中去。 說(shuō)明:說(shuō)明:不選用FIELDS ,將當(dāng)前表結(jié)構(gòu)的全部 字段復(fù)制到新表文件中去,否則只復(fù)制指定字段到 新表中去; 新生成的表只有結(jié)構(gòu),沒(méi)有記錄,稱(chēng)為空表。 新表是關(guān)閉的,必須先打開(kāi)才能使用。 注意:注意:空表的記錄號(hào)情況。 二、表文件的復(fù)制二、表文件的復(fù)制 1、復(fù)制數(shù)據(jù)表文件的結(jié)構(gòu)和記錄 格式:格式:COPY TO FIELDS FOR/WHILE 功能:功能:不選和時(shí)復(fù)制全部記錄。 不選時(shí)復(fù)制全部字段,否則只復(fù)制指 前一頁(yè)后一頁(yè) 的字段,新表的結(jié)構(gòu)由指定的字段名和順序決定。 對(duì)含備注型字段的表,如復(fù)制

12、命令中包含備注型字段時(shí), 則復(fù)制結(jié)果既生成新的數(shù)據(jù)表文件,也生成新的備注文件。2、數(shù)據(jù)表文件之間的數(shù)據(jù)傳送 格式:格式:APPEND FROM FIELDS FOR/WHILE 功能:功能:將指定的原表文件中滿(mǎn)足條件的記錄數(shù)據(jù)追加到當(dāng)前 表文件中去。 說(shuō)明:說(shuō)明:不選用FIELDS 時(shí),只追加原表中所有與當(dāng) 前表同名、同類(lèi)型的字段數(shù)據(jù)。 選用FIELDS 時(shí),只追加原表中指定的與當(dāng) 前表同名、同類(lèi)型的字段數(shù)據(jù)。 若原表的字段寬度大于當(dāng)前表的同名字段的寬度時(shí),對(duì) 于字符型數(shù)據(jù),自動(dòng)截取左側(cè)字符;對(duì)于數(shù)值型數(shù)據(jù), 放不下時(shí),則用*號(hào)代替,表示溢出。 注意分清兩個(gè)表哪一個(gè)是接收數(shù)據(jù),哪一個(gè)是提供數(shù)據(jù)

13、, 且接收數(shù)據(jù)表必須是當(dāng)前表。前一頁(yè)后一頁(yè)3、復(fù)制數(shù)據(jù)表文件的記錄生成文本文件(只有數(shù)據(jù), 沒(méi)有結(jié)構(gòu)) 格式:格式:COPY TO FIELDS FOR |WHILE TYPE XLS|SDF|DELI WITH 功能:功能:將當(dāng)前表文件中的記錄數(shù)據(jù)復(fù)制成指定格式的文本 文件。 說(shuō)明:說(shuō)明:擴(kuò)展名為T(mén)XT。 SDF|DELI WITH 用于指定文本文件格式: SDF 標(biāo)準(zhǔn)格式:記錄等長(zhǎng),字段間無(wú)分隔符,字符型 數(shù)據(jù)無(wú)定界符。 DELI 緊湊格式:記錄不等長(zhǎng),字段間用,號(hào)隔開(kāi), 字符型數(shù)據(jù)默認(rèn)定界符為雙引號(hào)。 D型數(shù)據(jù)復(fù)制后格式變成yyyymmdd。 用TYPE 顯示。前一頁(yè)后一頁(yè)4、文本文件向

14、數(shù)據(jù)表文件傳送數(shù)據(jù) 格式:格式:APPEND FROM SDF|DELI WITH 功能:功能:把指定的文本文件中的數(shù)據(jù)追加到當(dāng)前表文件中去。 說(shuō)明:說(shuō)明:追加規(guī)則:同位置追加,文本文件中的數(shù)據(jù)位置與 當(dāng)前表文件的字段一一對(duì)應(yīng)。 SDF|DELI用于指定文本文件格式,指定格式必須與 文本文件一致。前一頁(yè)返回5.復(fù)制任何類(lèi)型的文件【命令】COPY FILE TO 【功能】從文件復(fù)制到文件【說(shuō)明】 (1)若用該命令對(duì)表進(jìn)行復(fù)制,該表必須處于關(guān)閉狀態(tài)。 (2)與可使用通配符“*”號(hào)和“?”例如:USE COPY FILE XS*.* TO SS*.*三、單記錄和數(shù)組之間的數(shù)據(jù)交換三、單記錄和數(shù)組之間

15、的數(shù)據(jù)交換1、將表中記錄傳送到數(shù)組或內(nèi)存變量命令SCATTER FIELDS MEMO TO BLANK|MEMVAR BLANK功能將當(dāng)前記錄的字段值按順序依次送入數(shù)組元素中,或依次送入一組內(nèi)存變量中.說(shuō)明1:若選擇FIELDS子句,則只傳送字段名表中的字段值;否則將傳送所有的字段值(備注型除外).若要傳送備注型還需要用MEMO選項(xiàng). 2:使用TO 子句能將數(shù)據(jù)復(fù)制到所示的數(shù)組元素中(vfp會(huì)自動(dòng)建立或擴(kuò)大數(shù)組). 3:使用MEMVAR將為數(shù)據(jù)復(fù)制到一組內(nèi)存變量中,由于這組內(nèi)存變量名分別與相應(yīng)的字段名相同,因此在使用時(shí)應(yīng)在前面加上M.。2.將數(shù)組或內(nèi)存變量的數(shù)據(jù)傳送到記錄命令GATHER F

16、ROM |MEMVAR FIELDS MEMO 功能將數(shù)組或內(nèi)存變量的數(shù)據(jù)依次傳送到當(dāng)前記錄,以替換相應(yīng)字段值。說(shuō)明1:修改當(dāng)前記錄前需要確定記錄指針位置。 2:若使用FIELDS子句,僅中的字段才會(huì)被數(shù)組元素值替代。缺少M(fèi)EMO將忽略備注型字段。即使使用MEMO子句也忽略通用型字段。 3:內(nèi)存變量值將傳送給它同名的字段,若某字段無(wú)同名的內(nèi)存變量,則不對(duì)該字段進(jìn)行數(shù)據(jù)替換。 4:若數(shù)組元素多于字段數(shù),則多余的數(shù)組元素不傳送;而數(shù)組元素少于字段數(shù),則多余的字段其值不會(huì)改變。四、多記錄和數(shù)組之間的數(shù)據(jù)交換四、多記錄和數(shù)組之間的數(shù)據(jù)交換1:將表的一批記錄復(fù)制到數(shù)組命令COPY TO ARRAY FI

17、ELDS 范圍 FOR WHILE功能將當(dāng)前表中選定的數(shù)據(jù)復(fù)制到表示的數(shù)組中,但不復(fù)制備注型字段。說(shuō)明1:若命令中指定的數(shù)組不存在,vfp會(huì)自動(dòng)建立它。 2:可以將單個(gè)記錄的數(shù)據(jù)復(fù)制到一維數(shù)組中。 3:該命令能將當(dāng)前表的多個(gè)記錄復(fù)制到二維數(shù)組中。復(fù)制時(shí)1行存儲(chǔ)1個(gè)記錄,即第一個(gè)字段值送到該行第一列,第二個(gè)字段值送到該行第二列,以此類(lèi)推。與與SCATTER命令不同,若數(shù)組事先已定義,該命令不再調(diào)命令不同,若數(shù)組事先已定義,該命令不再調(diào)整它的大小。整它的大小。2、從數(shù)組向表追加記錄命令A(yù)PPEND FROM ARRAY FOR FIELDS 功能將滿(mǎn)足條件的數(shù)組行數(shù)據(jù)按記錄依次追加到當(dāng)前表中,但忽略備注型字段。說(shuō)明1: 可以是一維或二維數(shù)組。數(shù)組的行數(shù)就是所追加的新

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論