




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Visual FoxproVisual Foxpro 程序設(shè)計教程程序設(shè)計教程第第4章章 表的基本操作表的基本操作第第4 4章章 表的基本操作表的基本操作n4.1 4.1 表的建立表的建立n4.2 4.2 表的顯示與維護表的顯示與維護n4.3 4.3 表的排序與索引表的排序與索引n4.4 4.4 表的統(tǒng)計與計算表的統(tǒng)計與計算n4.5 4.5 多個表的操作多個表的操作 4.2 4.2 表的顯示與維護表的顯示與維護n4.2.1 4.2.1 表的打開與關(guān)閉表的打開與關(guān)閉n4.2.2 4.2.2 表的顯示表的顯示n4.2.3 4.2.3 表的修改表的修改n4.2.4 4.2.4 表記錄指針的定位表記錄
2、指針的定位n4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n4.2.6 4.2.6 表的復制表的復制 4.2.3 4.2.3 表的修改表的修改n1.1.表結(jié)構(gòu)的修改表結(jié)構(gòu)的修改n要修改當前表的結(jié)構(gòu),既可修改各字段的要修改當前表的結(jié)構(gòu),既可修改各字段的名字、類型、寬度、小數(shù)位數(shù),又可增加、名字、類型、寬度、小數(shù)位數(shù),又可增加、刪除、移動字段或者修改索引標記。命令刪除、移動字段或者修改索引標記。命令格式是:格式是: MODIFY STRUCTUREMODIFY STRUCTURE4.2.3 4.2.3 表的修改表的修改n2.2.打開瀏覽窗口打開瀏覽窗口n打開表后,在打開表后,在“顯示
3、顯示”菜單中選擇菜單中選擇“瀏覽瀏覽”命令,則打開瀏覽窗口,表的內(nèi)容將出現(xiàn)命令,則打開瀏覽窗口,表的內(nèi)容將出現(xiàn)在瀏覽窗口中。也可以在打開表后,輸入在瀏覽窗口中。也可以在打開表后,輸入BROWSEBROWSE命令打開瀏覽窗口。命令打開瀏覽窗口。n可用鍵盤的光標控制鍵可用鍵盤的光標控制鍵PgUp、PgDn來查看。來查看。n對于備注型字段和通用型字段,若其中含有內(nèi)對于備注型字段和通用型字段,若其中含有內(nèi)容,則分別顯示為容,則分別顯示為Memo和和Gen,若字段中沒,若字段中沒有內(nèi)容,則顯示為有內(nèi)容,則顯示為memo和和gen。雙擊。雙擊Gen和和Memo或亮條在其上面時,按或亮條在其上面時,按Ctr
4、l+PgDn鍵可鍵可看到其中的內(nèi)容??吹狡渲械膬?nèi)容。4.2.3 4.2.3 表的修改表的修改n2.2.打開瀏覽窗口打開瀏覽窗口n數(shù)據(jù)的兩種顯示方式。瀏覽窗口中的數(shù)據(jù)數(shù)據(jù)的兩種顯示方式。瀏覽窗口中的數(shù)據(jù)有有瀏覽瀏覽和和編輯編輯兩種顯示方式??稍趦煞N顯兩種顯示方式??稍趦煞N顯示方式之間切換。示方式之間切換。nBrowseBrowse窗口的分割與同步窗口的分割與同步瀏覽窗口的分割瀏覽窗口的分割4.2.3 4.2.3 表的修改表的修改n3.3.成批替換修改成批替換修改n命令格式是:命令格式是: REPLACE REPLACE WITH WITH 1 ADDITIVE,ADDITIVE, WITH WI
5、TH 2 ADDITIVE ,ADDITIVE , FOR FOR WHILE WHILE 該命令用一個表達式的值替換當前表中一個該命令用一個表達式的值替換當前表中一個字段的值。字段的值。4.2.3 4.2.3 表的修改表的修改n3.3.成批替換修改成批替換修改n若不選擇若不選擇 和和FORFOR子句或子句或WHILEWHILE子句,子句,則則默認為當前記錄默認為當前記錄。如果選擇了。如果選擇了FORFOR子句,子句,則則 默認為默認為ALLALL,選擇了,選擇了WHILEWHILE子句,子句,則則 默認為默認為RESTREST。n ADDITIVEADDITIVE只能在替換只能在替換備注型備
6、注型字段時使用。字段時使用。使用使用ADDITIVEADDITIVE,備注型字段的替換內(nèi)容將,備注型字段的替換內(nèi)容將附加到備注型字段原來內(nèi)容的后面,否則附加到備注型字段原來內(nèi)容的后面,否則用表達式的值改寫原備注型字段內(nèi)容。用表達式的值改寫原備注型字段內(nèi)容。例例 寫出對學生表進行如下操作的命令:寫出對學生表進行如下操作的命令: (1 1)將少數(shù)民族學生的入學成績增加)將少數(shù)民族學生的入學成績增加2020分。分。 (2 2)將)將6 6號記錄的出生日期修改為號記錄的出生日期修改為19831983年年9 9月月7 7日日; 操作命令如下:操作命令如下: USE USE 學生學生 REPLACE RE
7、PLACE 入學成績?nèi)雽W成績 WITH WITH 入學成績?nèi)雽W成績+20 FOR +20 FOR 少數(shù)少數(shù)民族否民族否 GO 6 &GO 6 &將記錄指針定位到將記錄指針定位到6 6號記錄號記錄 REPLACE REPLACE 出生日期出生日期 WITH 1983-09-07WITH 1983-09-074.2.3 4.2.3 表的修改表的修改第第4 4章章 表的基本操作表的基本操作n4.1 4.1 表的建立表的建立n4.2 4.2 表的顯示與維護表的顯示與維護n4.3 4.3 表的排序與索引表的排序與索引n4.4 4.4 表的統(tǒng)計與計算表的統(tǒng)計與計算n4.5 4.5 多個表的
8、操作多個表的操作 4.2 4.2 表的顯示與維護表的顯示與維護n4.2.1 4.2.1 表的打開與關(guān)閉表的打開與關(guān)閉n4.2.2 4.2.2 表的顯示表的顯示n4.2.3 4.2.3 表的修改表的修改n4.2.4 4.2.4 表記錄指針的定位表記錄指針的定位n4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n4.2.6 4.2.6 表的復制表的復制 n1 1絕對定位絕對定位n絕對定位是將記錄指針定位到指定記錄。絕對定位是將記錄指針定位到指定記錄。n命令格式是:命令格式是: GOTO GOTO |TOP|BOTTOMTOP|BOTTOMn命令中記錄號的取值范圍是命令中記錄號的取值范圍
9、是1 1至當前表中的最大記至當前表中的最大記錄個數(shù),即函數(shù)錄個數(shù),即函數(shù)RECCOUNT()RECCOUNT()的值,否則出錯。的值,否則出錯。TOPTOP和和BOTTOMBOTTOM分別表示表的首、末記錄。分別表示表的首、末記錄。4.2.4 4.2.4 表記錄指針的定位表記錄指針的定位n2 2相對定位相對定位n相對定位是以當前記錄位置為基準,向前或相對定位是以當前記錄位置為基準,向前或向后移動記錄指針。向后移動記錄指針。n命令格式是:命令格式是: SKIP SKIP n利用利用BOF()BOF()和和EOF()EOF()這兩個函數(shù)可以掌握有關(guān)這兩個函數(shù)可以掌握有關(guān)記錄指針移動的情況。記錄指針
10、移動的情況。(P67)(P67)4.2.4 4.2.4 表記錄指針的定位表記錄指針的定位n3 3查詢定位查詢定位順序查詢的命令格式是:順序查詢的命令格式是:nLOCATE LOCATE FOR FOR |WHILE |WHILE n函數(shù)函數(shù)FOUND()FOUND()值為值為.T.T.或或.F.F.。n當查找到第一個滿足條件的記錄后,如果當查找到第一個滿足條件的記錄后,如果執(zhí)行執(zhí)行CONTINUECONTINUE命令,則繼續(xù)尋找滿足條件命令,則繼續(xù)尋找滿足條件的記錄,直到的記錄,直到 結(jié)束為止。結(jié)束為止。4.2.4 4.2.4 表記錄指針的定位表記錄指針的定位例例: :在學生表中查詢漢族男生的
11、姓名、入學成績和年齡。在學生表中查詢漢族男生的姓名、入學成績和年齡。操作命令如下:操作命令如下:USE USE 學生學生LOCAT FOR !LOCAT FOR !少數(shù)民族否少數(shù)民族否 AND AND 性別性別=男男 DISP DISP 姓名姓名, ,入學成績?nèi)雽W成績, YEAR(DATE()-YEAR(, YEAR(DATE()-YEAR(出生日期出生日期) )CONTINUECONTINUE? RECNO(),? RECNO(),姓名姓名, ,入學成績?nèi)雽W成績, YEAR(DATE()-YEAR(, YEAR(DATE()-YEAR(出生出生日期日期) )4.2.4 4.2.4 表記錄指針
12、的定位表記錄指針的定位注意:命令中范圍子句對記錄指針位置的影響n如果指定的范圍為當前一條記錄,則指針位置不發(fā)生變化;n如果指定的范圍為某一條記錄(如RECORD n),則指針移到該條記錄;n如果指定的范圍為NEXT n,則當有FOR短語或無條件短語時,指針將停在此范圍中最下一條記錄,當有WHILE條件短語時,指針停在此范圍內(nèi)第一個不符合條件的記錄;n如果指定的范圍為ALL或REST,則只要不是WHILE條件未滿足的情況,最后指針都將停在文件尾,也就是使EOF()為.T.處,而不是最后一條記錄。4.2 4.2 表的顯示與維護表的顯示與維護n4.2.1 4.2.1 表的打開與關(guān)閉表的打開與關(guān)閉n4
13、.2.2 4.2.2 表的顯示表的顯示n4.2.3 4.2.3 表的修改表的修改n4.2.4 4.2.4 表記錄指針的定位表記錄指針的定位n4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n4.2.6 4.2.6 表的復制表的復制 4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n1.1.插入記錄插入記錄n命令格式是:命令格式是: INSERTINSERT BLANK BEFORE BLANK BEFOREn若給出若給出BLANKBLANK選項,則插入一個空記錄。若不給選項,則插入一個空記錄。若不給出此項,則進入全屏幕數(shù)據(jù)記錄輸入窗口。出此項,則進入全屏幕數(shù)據(jù)記錄輸入窗
14、口。n若給出若給出BEFOREBEFORE選項,則在當前記錄的前面插入選項,則在當前記錄的前面插入一個新記錄,即插入的新記錄成為當前記錄,一個新記錄,即插入的新記錄成為當前記錄,而原來的當前記錄及其后面記錄的記錄號均加而原來的當前記錄及其后面記錄的記錄號均加1 1。若不給出該選項,則在當前記錄的后面插入一若不給出該選項,則在當前記錄的后面插入一個新記錄。個新記錄。4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n1.1.插入記錄(續(xù))插入記錄(續(xù))n例例 對學生表增加對學生表增加6 6號和號和7 7號記錄。號記錄。nUSE USE 學生學生nGO 6GO 6 nINSERT BEF
15、OREINSERT BEFORE & &此時新增加的此時新增加的6 6號記號記錄變成當前記錄錄變成當前記錄nINSERTINSERT & &在在6 6號記錄之后插入一條新記號記錄之后插入一條新記 錄,即第錄,即第7 7號記錄號記錄4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n2.2.追加記錄追加記錄n命令格式是:命令格式是: APPENDAPPEND BLANK BLANKn該命令在當前表的末尾追加一個新記錄。該命令在當前表的末尾追加一個新記錄。n若選用若選用BLANKBLANK選項,則追加一個空記錄到選項,則追加一個空記錄到表的末尾。表的末尾。
16、nAPPENDAPPEND命令是在當前表的末尾增加新記錄,命令是在當前表的末尾增加新記錄,而而INSERTINSERT命令可以在指定位置上增加新記命令可以在指定位置上增加新記錄。兩條命令的屏幕操作方式是相同的。錄。兩條命令的屏幕操作方式是相同的。4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n2.2.追加記錄(續(xù))追加記錄(續(xù))n例例 在學生表末記錄后增加兩個記錄。在學生表末記錄后增加兩個記錄。nUSE USE 學生學生nAPPEND APPEND nAPPEND APPEND n顯然,顯然,APPENDAPPEND命令與下面兩條命令等價:命令與下面兩條命令等價:nGO BOTT
17、GO BOTTnINSERTINSERT4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n3.3.刪除記錄刪除記錄nVisual FoxProVisual FoxPro對部分記錄的刪除分兩步進行:對部分記錄的刪除分兩步進行:首先對想要刪除的記錄加上刪除標志(首先對想要刪除的記錄加上刪除標志(* *),這),這時被標記的記錄并沒有真正被刪除,需要時仍時被標記的記錄并沒有真正被刪除,需要時仍可以恢復。然后對加了刪除標志的記錄真正地可以恢復。然后對加了刪除標志的記錄真正地從表中刪除掉。從表中刪除掉。4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n3.3.刪除記錄(續(xù))刪除記
18、錄(續(xù))n(1 1)給記錄加刪除標志)給記錄加刪除標志n命令格式是:命令格式是:nDELETEDELETE FOR FOR WHILE WHILE n該命令給指定的記錄加上刪除標志。若不該命令給指定的記錄加上刪除標志。若不選擇可選項,則僅對當前記錄加上刪除標選擇可選項,則僅對當前記錄加上刪除標志。志。4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n3.3.刪除記錄(續(xù))刪除記錄(續(xù))n(2 2)取消刪除標記)取消刪除標記n命令格式是:命令格式是:nRECALL RECALL FOR FOR WHILE WHILEn該命令取消指定記錄上的刪除標志,若不該命令取消指定記錄上的刪除標志
19、,若不選擇可選項,則僅取消當前記錄的刪除標選擇可選項,則僅取消當前記錄的刪除標志。志。4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n3.3.刪除記錄(續(xù))刪除記錄(續(xù))n(3 3)真正刪除記錄)真正刪除記錄n命令格式是:命令格式是: PACKPACKn該命令清除所有帶刪除標志的記錄。該命令清除所有帶刪除標志的記錄。n例例: :刪除學生表中刪除學生表中5 51010之間的全部記錄。之間的全部記錄。nUSE USE 學生學生nGO 5GO 5nDELETE NEXT 6DELETE NEXT 6nPACKPACK4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n3.3.
20、刪除記錄(續(xù))刪除記錄(續(xù))n(4 4)刪除全部記錄)刪除全部記錄n命令格式是:命令格式是: ZAPZAPn該命令刪除當前表的全部記錄,只留下表該命令刪除當前表的全部記錄,只留下表結(jié)構(gòu)。結(jié)構(gòu)。4.2 4.2 表的顯示與維護表的顯示與維護n4.2.1 4.2.1 表的打開與關(guān)閉表的打開與關(guān)閉n4.2.2 4.2.2 表的顯示表的顯示n4.2.3 4.2.3 表的修改表的修改n4.2.4 4.2.4 表記錄指針的定位表記錄指針的定位n4.2.5 4.2.5 表記錄的增加與刪除表記錄的增加與刪除n4.2.6 4.2.6 表的復制表的復制 4.2.6 4.2.6 表的復制表的復制n1.1.復制表的結(jié)構(gòu)
21、復制表的結(jié)構(gòu)n命令格式是:命令格式是:n COPY STRUCTURE TO COPY STRUCTURE TO FIELDS FIELDS n該命令將當前表的結(jié)構(gòu)復制到指定的表中。該命令將當前表的結(jié)構(gòu)復制到指定的表中。僅復制當前表的結(jié)構(gòu),其記錄數(shù)據(jù)不復制。僅復制當前表的結(jié)構(gòu),其記錄數(shù)據(jù)不復制。4.2.6 4.2.6 表的復制表的復制n2.2.復制表復制表n命令格式是:命令格式是: COPY TO COPY TO FIELDS FIELDS FOR FOR WHILE WHILE TYPE SDF|DELIMITED|XLS WITH TYPE SDF|DELIMITED|XLS WITH |
22、BLANK|BLANKn該命令將當前表中的數(shù)據(jù)與結(jié)構(gòu)同時復制該命令將當前表中的數(shù)據(jù)與結(jié)構(gòu)同時復制到指定的表中,即復制了一個新的表。此到指定的表中,即復制了一個新的表。此命令還可以將當前表復制生成一個其他格命令還可以將當前表復制生成一個其他格式的數(shù)據(jù)文件。式的數(shù)據(jù)文件。4.2.6 4.2.6 表的復制表的復制n2.2.復制表復制表n復制含有備注型字段的表時,如果指定要復制含有備注型字段的表時,如果指定要復制該備注型字段,則在復制表的同時,復制該備注型字段,則在復制表的同時,復制相應的備注文件。復制相應的備注文件。n若選擇了若選擇了SDFSDF或或DELIMITEDDELIMITED,則將當前表復
23、,則將當前表復制成指定的文本文件,默認擴展名為制成指定的文本文件,默認擴展名為TXTTXT。其格式由其格式由SDFSDF和和DELIMITEDDELIMITED決定。決定。4.2.6 4.2.6 表的復制表的復制n2.2.復制表復制表( (續(xù)續(xù)) )nSDFSDF為標準格式,記錄定長,不用分隔符為標準格式,記錄定長,不用分隔符和定界符,每個記錄均從頭部開始存放,和定界符,每個記錄均從頭部開始存放,均以回車符結(jié)束。均以回車符結(jié)束。nDELIMITEDDELIMITED為通用格式,記錄不等長,每為通用格式,記錄不等長,每個記錄均以回車符結(jié)束。個記錄均以回車符結(jié)束。n若選用若選用BLANKBLANK
24、,字段之間用一個空格分隔,字段之間用一個空格分隔,否則用一個逗號分隔。否則用一個逗號分隔。4.2.6 4.2.6 表的復制表的復制n2.2.復制表復制表( (續(xù)續(xù)) )n若選用若選用 ,字符型數(shù)據(jù)用指定的,字符型數(shù)據(jù)用指定的 括起來,否則用雙引號括起來。括起來,否則用雙引號括起來。n若選擇了若選擇了XLSXLS,則得到一個,則得到一個ExcelExcel文件,該文件,該文件只能在文件只能在ExcelExcel中打開。中打開。4.2.6 4.2.6 表的復制表的復制n2.2.復制表復制表( (續(xù)續(xù)) )n例例 對學生表進行復制操作,并分析目標對學生表進行復制操作,并分析目標文件的類型。文件的類型
25、。 (1 1)將入學成績大于)將入學成績大于600600分的記錄復制分的記錄復制到到new.dbfnew.dbf中。中。 (2 2)分別生成標準格式和通用格式的文)分別生成標準格式和通用格式的文本文件本文件new1.txtnew1.txt和和new2.txtnew2.txt。4.2.6 4.2.6 表的復制表的復制n2.2.復制表復制表( (續(xù)續(xù)) )n操作命令如下:操作命令如下:nUSE 學生學生nCOPY TO new1 FOR 入學成績?nèi)雽W成績600nUSE new1 &查看新表的記錄查看新表的記錄nLIST nCOPY TO new1 SDFnTYPE new1.txt &am
26、p;查看新文本文件的內(nèi)容查看新文本文件的內(nèi)容nCOPY TO new2 DELIMITEDnTYPE new2.txt &注意和注意和new1.txt文件格式上的文件格式上的差異。差異。4.2.6 4.2.6 表的復制表的復制n3.3.從其他文件向表添加數(shù)據(jù)從其他文件向表添加數(shù)據(jù)n命令格式是:命令格式是:APPEND FROM APPEND FROM FIELDS FIELDS FOR FOR WHILE WHILE TYPE TYPE n該命令將指定文件(源文件)中的數(shù)據(jù)添加到該命令將指定文件(源文件)中的數(shù)據(jù)添加到當前表的尾部。當前表的尾部。n選選SDF或或DELIMITED,取決
27、于源,取決于源文件的格式。文件的格式。n要注意源文件中的數(shù)據(jù)與當前表字段類型、順要注意源文件中的數(shù)據(jù)與當前表字段類型、順序和長度要匹配。序和長度要匹配。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送表與數(shù)組間的數(shù)據(jù)傳送n表與數(shù)組間的數(shù)據(jù)傳送是指可將表的記錄表與數(shù)組間的數(shù)據(jù)傳送是指可將表的記錄數(shù)據(jù)傳送到數(shù)組中而成為數(shù)組元素,反過數(shù)據(jù)傳送到數(shù)組中而成為數(shù)組元素,反過來也可以將數(shù)組元素值傳送到表而成為記來也可以將數(shù)組元素值傳送到表而成為記錄數(shù)據(jù)。錄數(shù)據(jù)。n (1)(1)將表的記錄數(shù)據(jù)傳送到數(shù)組將表的記錄數(shù)據(jù)傳送到數(shù)組n命令格式是:命令格式是: SCATTER FIELDS SC
28、ATTER FIELDS TO TO MEMO MEMO4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n命令按順序?qū)斍氨懋斍坝涗浿付ㄗ侄蔚膬?nèi)容命令按順序?qū)斍氨懋斍坝涗浿付ㄗ侄蔚膬?nèi)容依次存入數(shù)組。第一個字段存入數(shù)組的第一個依次存入數(shù)組。第一個字段存入數(shù)組的第一個元素中,第二個字段存入數(shù)組的第二個元素中,元素中,第二個字段存入數(shù)組的第二個元素中,依次類推。依次類推。n如果未指定如果未指定FIELDS ,則將除備注,則將除備注型字段以外所有的字段存入數(shù)組中。如果要對型字段以外所有的字段存入數(shù)組中。如果要對備注型字段同樣處理,就需在命令中加上備
29、注型字段同樣處理,就需在命令中加上MEMO選項。選項。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n如果數(shù)組元素個數(shù)比字段個數(shù)多,則多余的數(shù)如果數(shù)組元素個數(shù)比字段個數(shù)多,則多余的數(shù)組元素內(nèi)容仍保留;如果數(shù)組元素個數(shù)比字段組元素內(nèi)容仍保留;如果數(shù)組元素個數(shù)比字段個數(shù)少,則系統(tǒng)自動重新建立數(shù)組。個數(shù)少,則系統(tǒng)自動重新建立數(shù)組。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n例例 分析下列命令執(zhí)行后,數(shù)組元素值的變化。分析下列命令執(zhí)行后,數(shù)組元素值的變化。nCLEAR MEMORYCLEAR
30、 MEMORYnUSE USE 學生學生nDIMENSION y(5)DIMENSION y(5)nSTORE 7645 TO y(5)STORE 7645 TO y(5)nGO 4GO 4nSCATTER FIELDS SCATTER FIELDS 姓名姓名, ,出生日期出生日期, ,少數(shù)民族否少數(shù)民族否, ,籍貫籍貫 TO yTO ynLIST MEMORY LIKE y?LIST MEMORY LIKE y?4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n(2)(2)將數(shù)組數(shù)據(jù)傳送到表記錄將數(shù)組數(shù)據(jù)傳送到表記錄n命令格式:命令格式:
31、GATHER FROM GATHER FROM FIELDS FIELDS MEMO MEMOn命令將數(shù)組中的數(shù)據(jù)作為一個記錄傳送到命令將數(shù)組中的數(shù)據(jù)作為一個記錄傳送到當前打開的表中的當前記錄。當前打開的表中的當前記錄。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n將將如果指定如果指定FIELDS 短語,則只向短語,則只向指定的字段填加數(shù)據(jù),其他字段填空。如果未指定的字段填加數(shù)據(jù),其他字段填空。如果未指定指定FIELDS 短語,則按字段順序短語,則按字段順序填加數(shù)據(jù)。填加數(shù)據(jù)。n當省略當省略MEMO 選項時將忽略備注型字段。選項時將忽略備
32、注型字段。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n如果數(shù)組元素個數(shù)少于指定字段個數(shù),則多余如果數(shù)組元素個數(shù)少于指定字段個數(shù),則多余的字段填空;如果數(shù)組元素個數(shù)多于指定字段的字段填空;如果數(shù)組元素個數(shù)多于指定字段個數(shù),則忽略多余的數(shù)組元素。個數(shù),則忽略多余的數(shù)組元素。n當數(shù)組元素的數(shù)據(jù)類型與表相應字段類型不同當數(shù)組元素的數(shù)據(jù)類型與表相應字段類型不同且不兼容且不兼容( 如數(shù)值型數(shù)組元素仍能被傳送到字如數(shù)值型數(shù)組元素仍能被傳送到字符型字段之中,它們雖類型不同卻是兼容的符型字段之中,它們雖類型不同卻是兼容的)時,時, 該字段將自動被初始化為
33、空值。字符型與數(shù)該字段將自動被初始化為空值。字符型與數(shù)值型的默認空值分別是空格與值型的默認空值分別是空格與0,日期型與邏輯,日期型與邏輯型的默認空值為型的默認空值為 / / 與與.F.。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n例例 通過數(shù)組通過數(shù)組y向?qū)W生表添加記錄。向?qū)W生表添加記錄。nUSE 學生學生nAPPE BLANnDIMENSION y(5)nY(1)=100100nSTORE 鄧杰輝鄧杰輝 TO y(2)ny(3)=女女“ny(4)=1986-07-23nSTORE .T. TO y(5)nGATHER FROM ynG
34、O BOTTnDISP4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n(3)(3)把表的一批記錄同時復制到數(shù)組把表的一批記錄同時復制到數(shù)組n命令格式:命令格式: COPY TO ARRAY COPY TO ARRAY FIELDS FIELDS FOR FOR WHILEWHILEn命令將當前表指定記錄中指定字段的數(shù)據(jù)命令將當前表指定記錄中指定字段的數(shù)據(jù)復制到指定的數(shù)組之中。復制到指定的數(shù)組之中。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))n若可選項都缺省,則復制除備注型字段以若可選項
35、都缺省,則復制除備注型字段以外的全部記錄數(shù)據(jù)。命令中指定的數(shù)組如外的全部記錄數(shù)據(jù)。命令中指定的數(shù)組如不存在。不存在。nVisual FoxProVisual FoxPro會根據(jù)需要自動建立此數(shù)會根據(jù)需要自動建立此數(shù)組,若數(shù)組已事先定義好,該命令將不會組,若數(shù)組已事先定義好,該命令將不會自動調(diào)整數(shù)組的大小以滿足要求??梢詮妥詣诱{(diào)整數(shù)組的大小以滿足要求。可以復制表的單個記錄的數(shù)據(jù)到一個一維數(shù)組中,制表的單個記錄的數(shù)據(jù)到一個一維數(shù)組中,但與但與SCATTERSCATTER命令不同的是該命令不能把命令不同的是該命令不能把備注型字段的數(shù)據(jù)復制到數(shù)據(jù)中。備注型字段的數(shù)據(jù)復制到數(shù)據(jù)中。4.2.6 4.2.6 表的復制表的復制n4 4表與數(shù)組間的數(shù)據(jù)傳送(續(xù))表與數(shù)組間的數(shù)據(jù)傳送(續(xù))nCOPY TO ARRAYCOPY TO ARRAY命令能夠一次把當前表中命令能夠一次把當前表中的多個記錄同時復制到指定二維數(shù)組中,的多個記錄同時復制到指定二維數(shù)組中,一個記錄的數(shù)據(jù)送入數(shù)組的同一行中,即一個記錄的數(shù)據(jù)送入數(shù)組的同一行中,即第一個字段數(shù)據(jù)送到該行的第一列,第二第一個字段數(shù)據(jù)送到該行的第一列,第二個字段數(shù)據(jù)被送到該行的第二列,依此類個字段數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年財務報表分析考試模擬試卷及答案
- 2025年:深入探討合同管理與用電合同工作的現(xiàn)狀及對策
- 2025年商業(yè)綜合體租賃合同案例
- 房屋間線合同協(xié)議書
- 惡意轉(zhuǎn)移財產(chǎn)協(xié)議書
- 學生自主學習環(huán)境的構(gòu)建計劃
- 薪酬管理與財務核算計劃
- 杭州協(xié)議離婚協(xié)議書
- 橋梁轉(zhuǎn)包合同協(xié)議書
- 非書資料的整合與利用計劃
- 專題08 一元一次不等式(組)應用的兩種考法(學生版)-2023年初中數(shù)學7年級下冊同步壓軸題
- 網(wǎng)絡群體市場章
- 城鎮(zhèn)排水管道檢測記錄表、缺陷圖圖例、檢測成果表、等級劃分及樣圖
- 食用農(nóng)產(chǎn)品集中交易市場分級標準
- 成人高流量濕化氧療臨床應用規(guī)范專家共識2019
- 管道開挖回填計算(模板)1
- 紀檢監(jiān)察機關(guān)查辦案件工作的技巧及談話策略
- 電大公共政策概論形考任務1-4答案
- 發(fā)現(xiàn)中紋之美-壯錦
- T-GDSS 008-2022 不銹鋼管道安裝技術(shù)規(guī)范
- 小學生日常行為規(guī)范記錄本
評論
0/150
提交評論