999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

VFP二維數組在異構表數據復制中的應用

2012-10-18 02:52:48王亞軍王傳安宋雪亞賀文娟
赤峰學院學報·自然科學版 2012年21期

王亞軍,王傳安,宋雪亞,賀文娟

(安徽科技學院 計算機公共教學部,安徽 鳳陽 233100)

VFP二維數組在異構表數據復制中的應用

王亞軍,王傳安,宋雪亞,賀文娟

(安徽科技學院 計算機公共教學部,安徽 鳳陽 233100)

數組在VFP數據表之間進行信息傳遞有著廣泛的應用,數組和數據表之間可實現數據橫向傳遞,這給結構相同或相近的表之間進行數據的復制提供了極大的方便.然而,通過二維數組在兩個異構表中進行數據的復制無法直接實現,為了解決異構表之間的數據傳遞的問題,文章通過對異構表之間數據傳遞關系的分析,提出了一種利用兩個二維數組迂回比較來解決異構表之間數據傳輸的方法,希望為用戶處理類似問題提供幫助和參考.

VFP;異構表;二維數組;數據復制

1 引言

在VFP中,數組就是變量名相同而下標不同的一組變量,它由一系列元素組成,每個數組元素可通過數組名及相應的下標來訪問[1].數組在VFP中有著廣泛的應用,例如用它來存儲和顯示數據表的記錄、快速定義變量等場合[2].數組的引入,不僅可以大大提高運算速度,而且使許多復雜的編程問題變得非常簡單,且比較方便靈活.VFP支持一維和二維數組,允許數組元素具有不同的數據類型[3].

2 二維數組和數據表字段相互賦值存在的問題

數組和數據表之間可相互傳遞,即數據表中數據可以傳遞給數組,反過來,數組中的數據也可以添加到數據表中.二維數組與數據表記錄之間的數據交換可以通過COPY TO ARRAY和APPEND FROM ARRAY命令來完成[4],其中COPY TO ARRAY命令用于將當前表的若干條記錄復制到指定的二維數組中,APPEND FROM ARRAY則實現把二維數組中的值添加的數據表的末尾[5].用APPEND FROM ARRAY命令把數組元素中的值添加到數據表的末尾時,只能實現橫向添加,若要實現把二維數組某列元素的值添加到數據表某行的多個字段中,還沒有現成的方法,要實現這樣的功能還必須得借助二維數組在兩個表之間進行迂回方可實現.下面就通過一個例子來說明:

有一個數據表student(姓名C(9),學院C(20),寄發單位地C(4)),如圖1所示,現在要求把student表中學院和寄發單位地相同的記錄以每行3人填充到qq表中.qq表中的數據如圖2所示.可以看出,用COPY TO ARRAY和APPEND FROM ARRAY命令則無法實現這兩個異構表之間的數據傳遞.若要實現要求的功能,總體思路是:首先必須按學院和寄發單位進行排序,把學院和寄發單位地相同的記錄排列在一起;其次,把排序后的記錄復制到兩個二維數組中;然后,通過比較數組元素中各個記錄的學院和寄發單位地的值,把姓名字段的值賦給其中的一個數組的部分元素;最后,把數組中處理好的數據添加到qq表中.

3 程序算法

根據上述的總體思路,問題的解決應采用如下詳細步驟來處理:

(1)修改student表的結構,把該表的姓名字段名稱改名為姓名1,添加兩個和姓名1字段具有相同寬度和類型的字段“姓名2”和“姓名3”.修改后的student表如圖3所示.

(2)對student表按“學院”和“寄發單位地”兩個字段的升序排序生成新表www,用copy to array命令把www表中的所有記錄分別復制到數組aa和uu中臨時存儲起來.其中數組aa用來保存最終處理的結果,數據處理完畢,還要把數組aa中的值添加到qq表中.

(3)清空數組aa中每一行前三列元素的值,即每一條記錄的姓名1,姓名2,姓名3的值都為空.

(4)復制www表的結構到qq表,刪除www.dbf文件,打開qq表.

(5)把學院和寄發單位地相同的記錄的姓名1字段的值賦給數組aa的每一行的前三個元素:從數組uu的第i行(i=1)開始,依次用第4列和第5列的值分別與后繼的各行(第j行,j=2)的第4列和第5列的值進行比較,若發現兩行的第4列和第5列相等,則把第j行第1列中的值依次賦給數組 aa(i,k),(其中 k=1,2,3),k>3 時,i的值增加 1,k 的值變為1;反之,則讓j的值賦給i,再重復上述的比較工作.

圖1 student表及其中的數據

圖2 qq表及其中的數據

圖3 修改結構后的student表

(6)把數組aa中的各行元素的值用append from array命令添加到數據表qq中,然后刪除數組aa、uu及qq表中姓名1,姓名2,姓名3都為空的記錄.

具體的源程序如下:

4 結束語

文章從分析二維數組和數據表之間數據傳遞的特點出發,發現二維在處理異構表之間數據的傳遞時沒有直接的方法.為解決異構表之間數據的快速復制的難題,本人通過尋找兩個異構表表結構之間的關系,用二維數組迂回比較的方法,實現了把一個表中多條記錄的某個字段的值復制到另一個表的多個字段,從而為處理類似問題提供了方便和參考.

〔1〕李雁翎.VisualFoxPro應用基礎與面向對象程序設計教程[M].北京:高等教育出版社,2008.

〔2〕王志強.定義和使用Visual FoxPro數組應注意的幾個問題.甘肅科技縱橫,2010(1):31-32.

〔3〕翁正科.VisualFoxPro6.0 數據庫開發教程[M].北京:清華大學出版社,2000.

〔4〕郝鋒.Visual FoxPro 6.0/7.0 命令函數大全[M].北京:電子工業出版社,2002.

〔5〕李作主.巧用數組實現多表數據的更新[J].科技信息(學術研究),2008(36):111.

TP392

A

1673-260X(2012)11-0030-02

安徽科技學院教研課題(X201014)

主站蜘蛛池模板: 国产精品99久久久久久董美香 | 久久婷婷色综合老司机| 国产精品露脸视频| 亚洲视频欧美不卡| 91精品国产91欠久久久久| 国内a级毛片| 日本久久久久久免费网络| 国产一区二区三区精品久久呦| av一区二区三区高清久久| 国产精品蜜芽在线观看| 久久91精品牛牛| 亚洲区第一页| 亚洲成网777777国产精品| 欧美日韩成人| 亚洲欧洲日本在线| 波多野结衣亚洲一区| 日本三级黄在线观看| 日本欧美中文字幕精品亚洲| 国产女主播一区| 在线观看欧美精品二区| 精品国产成人三级在线观看| 欧美精品影院| 日韩美女福利视频| 国产在线98福利播放视频免费| 亚洲午夜久久久精品电影院| 国产亚洲一区二区三区在线| 国产欧美视频在线| 亚洲av无码久久无遮挡| 日韩午夜福利在线观看| 日本午夜视频在线观看| 朝桐光一区二区| 日韩色图区| 日韩欧美中文字幕在线精品| 亚洲国产亚洲综合在线尤物| 精品五夜婷香蕉国产线看观看| h网址在线观看| 亚洲自偷自拍另类小说| 午夜小视频在线| 免费A∨中文乱码专区| 91亚洲精选| 欧美精品xx| 欧美爱爱网| 91精品网站| 亚洲二三区| 国产自在自线午夜精品视频| 最近最新中文字幕在线第一页| 无码人妻免费| 欧美有码在线观看| 亚洲综合色在线| 色哟哟国产精品一区二区| 少妇极品熟妇人妻专区视频| 国产激情影院| 亚洲午夜片| 999国产精品| 伊人丁香五月天久久综合| 欧美成人看片一区二区三区 | 天天爽免费视频| 免费高清a毛片| 国产人人射| 亚洲综合片| 亚洲人成网站18禁动漫无码| 小说 亚洲 无码 精品| 国产精品免费露脸视频| 国产成人福利在线| 婷婷丁香在线观看| 国产丰满成熟女性性满足视频| 欧美另类精品一区二区三区| 亚洲一欧洲中文字幕在线| 婷婷亚洲最大| 免费av一区二区三区在线| 国产99久久亚洲综合精品西瓜tv| 国产福利不卡视频| 亚洲综合亚洲国产尤物| 免费看av在线网站网址| 国产h视频免费观看| 亚洲毛片网站| 婷婷久久综合九色综合88| 午夜福利视频一区| 亚洲综合中文字幕国产精品欧美| 亚洲色图欧美视频| 国产白浆视频| 国产主播喷水|